Nxt Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest Nxt 1.11.13 - NEW RELEASE: Ardor 2.0.14 - The Ardor genesis block happened at 0:00 January 1st

Pages: [1]

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

Come-from-Beyond

  • Hero Member
  • *****
  • Offline Offline
  • Posts: 4013
    • View Profile
  • Karma: +793/-671
Jinn & Distributed Computing
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.

Jimmy2011

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 328
    • View Profile
  • Karma: +24/-19
Re: Jinn & Distributed Computing
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.
NXT-LX5G-L63N-ST8S-9LVZY

cobaltskky

  • Hero Member
  • *****
  • Offline Offline
  • Posts: 2344
    • View Profile
  • Karma: +226/-138
Re: Jinn & Distributed Computing
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?

Come-from-Beyond

  • Hero Member
  • *****
  • Offline Offline
  • Posts: 4013
    • View Profile
  • Karma: +793/-671
Re: Jinn & Distributed Computing
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.

Wulfcastle

  • Newbie
  • *
  • Offline Offline
  • Posts: 11
    • View Profile
  • Karma: +2/-0
Re: Jinn & Distributed Computing
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.

Come-from-Beyond

  • Hero Member
  • *****
  • Offline Offline
  • Posts: 4013
    • View Profile
  • Karma: +793/-671
Re: Jinn & Distributed Computing
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.

Wulfcastle

  • Newbie
  • *
  • Offline Offline
  • Posts: 11
    • View Profile
  • Karma: +2/-0
Re: Jinn & Distributed Computing
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 :)

gs02xzz

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


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

Come-from-Beyond

  • Hero Member
  • *****
  • Offline Offline
  • Posts: 4013
    • View Profile
  • Karma: +793/-671
Re: Jinn & Distributed Computing
October 13, 2014, 03:25:37 pm


Can you compare Jinn with BOINC somehow?

Every Jinn is like a small BOINC in hardware.

KyLin

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

Looks good

gs02xzz

  • Hero Member
  • *****
  • Offline Offline
  • Posts: 1101
    • View Profile
  • Karma: +56/-12
Re: Jinn & Distributed Computing
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 »
Nxt Mission is to commercialize the crypto technology and build new commerce and society.
Pages: [1]