Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>Disclamer: I am a developer of SCOOP.</p> <p>It really depends on your personality. If you prefer getting theoretical information before moving forth, you should read some books or get along with the technologies first. A list of books covering a good part of the subject would be:</p> <ul> <li><em>Parallel Programming for multicore and cluster systems</em> by Thomas Rauber, and Gudula Rünger (Springer-Verlag).</li> <li><em>Principles of Parallel Programming</em> by Calvin Lin and Lawrence Snyder (Addison-Wesley)</li> <li><em>Patterns for Parallel Programming</em> by Timothy G. Mattson and al. (Addison-Wesley)</li> </ul> <p>Data-based technologies you may want to get acquainted with would be the MPI standard (for multi-computers) and OpenMP (for single-computer), as well as the pretty good multiprocessing module which is builtin in Python.</p> <p>If you prefer getting your hands dirty first, you should begin with task-based frameworks which provides a simple and user-friendly usage. Both of these were an utmost focus while creating <a href="http://scoop.googlecode.com" rel="nofollow">SCOOP</a>. You can try it with <code>pip -U scoop</code>. On Windows, you may wish to install PyZMQ first using their <a href="https://github.com/zeromq/pyzmq/downloads" rel="nofollow">executable installers</a>. You can check the provided examples and play with the various parameters to understand what causes performance degradation or increase with ease. I encourage you to compare it to its alternatives such as <a href="http://celeryproject.org/" rel="nofollow">Celery</a> for similar work or <a href="http://www.gevent.org/" rel="nofollow">Gevent</a> for a coroutine framework. If you feel adventurous, don't be shy to test the <a href="http://www.dabeaz.com/coroutines/" rel="nofollow">builtin coroutines functionnalities</a> of Python and plug them with various networking stacks.</p> <p>Using a task-based framework will ease you the burden of theoretical analysis such as load balancing implementation details, serialization and so on which is non-trivial and can take a long time to debug and get working. It provides all the desired level of understanding of distributed systems. Bonus with open source software: Check the code to understand under-the-hood mechanical details.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload