elective-stereophonic
elective-stereophonic
Jinn & Distributed Computing
Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest Nxt Client: Nxt 1.11.14

Author Topic: Jinn & Distributed Computing  (Read 7418 times)

Come-from-Beyond

  • Hero Member
  • *****
  • Karma: +794/-671
  • Offline Offline
  • Posts: 4013
    • View Profile
Jinn & Distributed Computing
« on: October 10, 2014, 12:41:01 pm »

Sometimes I receive letters/messages with questions related to Jinn and distributed computing, so I decided to create a thread and explain this issue a bit.

Jinn processor is a bunch of independent cores. A piece of code (entity) running on a core does some computations and can interact via messages with other entities running on other cores. A single task may require to send millions messages between thousands entities. In some cases the order of these messages doesn't matter, in some - does.

If we set a strict order of the interactions then we may lose concurrency and in the worst case a processor with 1000 cores will utilize only 1 core at a single moment of time. On the other hand, it's very hard (if possible at all) to split a task into pieces of code that can run in any order. Jinn provides a way to set the sequence of interactions within desirable limits. Some interactions may happen in random order, some may wait for special conditions. This is one of the main contracts of Jinn - to ensure a particular order of interactions within a single processor box and among several processors working in tandem all over the world.

There were math co-processors speeding up floating-point operations in the past. Now we have GPUs that are used to render 3D scenes. Jinn has its specific usage too, it's designed to lower interaction latency of distributed computations.
Logged

Jimmy2011

  • Sr. Member
  • ****
  • Karma: +24/-19
  • Offline Offline
  • Posts: 328
    • View Profile
Re: Jinn & Distributed Computing
« Reply #1 on: October 10, 2014, 01:37:03 pm »


It's great. I'd like to propose a slogan for Jinn: "Jinn is born for distributed computing"

Can't wait to writing some small test code snippets running on Jiniri.
Logged
NXT-LX5G-L63N-ST8S-9LVZY

cobaltskky

  • Hero Member
  • *****
  • Karma: +226/-138
  • Offline Offline
  • Posts: 2344
    • View Profile
Re: Jinn & Distributed Computing
« Reply #2 on: October 11, 2014, 07:24:41 pm »

I'm still unclear how NXTGrid stacks up exactly...Are they parallel development paths, so they both have there place in the future of decentralized compute?
Logged

Come-from-Beyond

  • Hero Member
  • *****
  • Karma: +794/-671
  • Offline Offline
  • Posts: 4013
    • View Profile
Re: Jinn & Distributed Computing
« Reply #3 on: October 11, 2014, 08:08:15 pm »

I'm still unclear how NXTGrid stacks up exactly...Are they parallel development paths, so they both have there place in the future of decentralized compute?

Parallel.
Logged

Wulfcastle

  • Newbie
  • *
  • Karma: +2/-0
  • Offline Offline
  • Posts: 11
    • View Profile
Re: Jinn & Distributed Computing
« Reply #4 on: October 12, 2014, 07:15:37 pm »

So basically any Jinn processor can interact with other Jinn processors across the entire network, allowing it to designate tasks for other Jinn processors to process and send back its output. If so then that is the basis for Distributed Computing.

While we're on this topic, one quick question :
Quote
The big difference is that Jinn uses horizontal scaling instead of vertical scaling

Does the above quote mean that as the number of processors in the JINN network increase, so does the processing power of a single JINN increase. Therefore you are using computational power not only from your own single JINN, but also from the whole network of JINN’s (distributed computing).

e.g If you are running an intensive application, you will be using the network’s computational power, not only your own computation power to run the application.
Logged

Come-from-Beyond

  • Hero Member
  • *****
  • Karma: +794/-671
  • Offline Offline
  • Posts: 4013
    • View Profile
Re: Jinn & Distributed Computing
« Reply #5 on: October 12, 2014, 07:17:43 pm »

So basically any Jinn processor can interact with other Jinn processors across the entire network, allowing it to designate tasks for other Jinn processors to process and send back its output. If so then that is the basis for Distributed Computing.

While we're on this topic, one quick question :
Quote
The big difference is that Jinn uses horizontal scaling instead of vertical scaling

Does the above quote mean that as the number of processors in the JINN network increase, so does the processing power of a single JINN increase. Therefore you are using computational power not only from your own single JINN, but also from the whole network of JINN’s (distributed computing).

e.g If you are running an intensive application, you will be using the network’s computational power, not only your own computation power to run the application.

Yes. If other processors give the permission.
Logged

Wulfcastle

  • Newbie
  • *
  • Karma: +2/-0
  • Offline Offline
  • Posts: 11
    • View Profile
Re: Jinn & Distributed Computing
« Reply #6 on: October 12, 2014, 07:31:30 pm »

So basically any Jinn processor can interact with other Jinn processors across the entire network, allowing it to designate tasks for other Jinn processors to process and send back its output. If so then that is the basis for Distributed Computing.

While we're on this topic, one quick question :
Quote
The big difference is that Jinn uses horizontal scaling instead of vertical scaling

Does the above quote mean that as the number of processors in the JINN network increase, so does the processing power of a single JINN increase. Therefore you are using computational power not only from your own single JINN, but also from the whole network of JINN’s (distributed computing).

e.g If you are running an intensive application, you will be using the network’s computational power, not only your own computation power to run the application.

Yes. If other processors give the permission.

Great! Thanks for the quick answer :)
Logged

gs02xzz

  • Hero Member
  • *****
  • Karma: +56/-12
  • Offline Offline
  • Posts: 1101
    • View Profile
Re: Jinn & Distributed Computing
« Reply #7 on: October 13, 2014, 03:22:15 pm »


Can you compare Jinn with BOINC somehow?
Logged
Nxt Mission is to commercialize the crypto technology and build new commerce and society.

Come-from-Beyond

  • Hero Member
  • *****
  • Karma: +794/-671
  • Offline Offline
  • Posts: 4013
    • View Profile
Re: Jinn & Distributed Computing
« Reply #8 on: October 13, 2014, 03:25:37 pm »


Can you compare Jinn with BOINC somehow?

Every Jinn is like a small BOINC in hardware.
Logged

KyLin

  • Full Member
  • ***
  • Karma: +4/-0
  • Offline Offline
  • Posts: 101
    • View Profile
    • nxtfans
Re: Jinn & Distributed Computing
« Reply #9 on: October 14, 2014, 06:28:26 am »

Looks good
Logged

gs02xzz

  • Hero Member
  • *****
  • Karma: +56/-12
  • Offline Offline
  • Posts: 1101
    • View Profile
Re: Jinn & Distributed Computing
« Reply #10 on: October 16, 2014, 06:46:44 pm »

Jinn processor is a bunch of independent cores. A piece of code (entity) running on a core does some computations and can interact via messages with other entities running on other cores. A single task may require to send millions messages between thousands entities. In some cases the order of these messages doesn't matter, in some - does.
If we set a strict order of the interactions then we may lose concurrency and in the worst case a processor with 1000 cores will utilize only 1 core at a single moment of time. On the other hand, it's very hard (if possible at all) to split a task into pieces of code that can run in any order. Jinn provides a way to set the sequence of interactions within desirable limits. Some interactions may happen in random order, some may wait for special conditions. This is one of the main contracts of Jinn - to ensure a particular order of interactions within a single processor box and among several processors working in tandem all over the world.
There were math co-processors speeding up floating-point operations in the past. Now we have GPUs that are used to render 3D scenes. Jinn has its specific usage too, it's designed to lower interaction latency of distributed computations.

In Chinese / 中文:
Jinn(晋)处理器是由一系列独立的芯核组成。一段在某个芯核上运行的程序(单元)可以做某种运算并且可以和运行在其他芯核上的其他众多程序单元以信息指令的方式相互交流。一个单一的任务可能需要向成千上万个程序单元发出上百万的信息指令来完成。在某些情况下信息指令的次序无关紧要,但在另外的某些情况下却重要。

如果我们僵硬地设定这种用于相互交流的信息指令的次序,我们可能会丧失并行运算的优势,最糟糕的情况是,比如一个拥有一千个芯核的处理器在某个特定的时间段里只有一个芯核在运行。但在另外一方面,无需指定次序地把一个任务分解成许多程序单元并在多个芯核上并行运算却是非常困难的(如果说是可能的话)。Jinn(晋)为芯核之间能取得满意的信息交流提供了一种途径。有些交流可能无需指定次序,另一些却需要等到一定条件。这就是Jinn(晋)的主要特征之一  -  在这种信息交流中保证和落实一种特定的次序,无论是在单个处理器箱内或是分布世界各地多个不同处理器的并行运行中。

过去有过用数学联合处理器来加快浮点运算的运算方法。现在我们又有用于三维显像的GPU处理器。同样Jinn(晋)处理器也有它的特殊用途,它被用来降低分布式运算中信息交流的滞留时间。
« Last Edit: October 16, 2014, 07:45:55 pm by gs02xzz »
Logged
Nxt Mission is to commercialize the crypto technology and build new commerce and society.
 

elective-stereophonic
elective-stereophonic
assembly
assembly