Menu

Version 4.3.0 released

2016-09-13
2016-09-24
  • Giridhar Pemmasani

    asyncoro version 4.3.0 has been released. Following is summary of changes since last version:

    • discoro (distributed computing module) now supports initializing nodes on Posix platforms (i.e., Linux, OS X etc., but not Windows). With this, computations can, for example, load data in to memory at node level so all server processes have (read-only) access to that data for in-memory processing. Applications can also use in-memory processing at each server as in previous versions. Server level in-memory can be used with all platforms, and for read-write access. Examples 'discoro_client9_node.py' and 'discoro_client9_server.py' have been added to illustrate these features.
    • Computation and RemoteCoroScheduler now have node_available that can be set to a coroutine function that is called by scheduler when a node is available. This function can, for example, transfer data for that node. Computation also supports node_setup that is executed on the node for initializing node (e.g., to read data in in files in to memory).
    • Files sent with Computation (as components) and files transferred by node_available are now saved in node directory, which is parent directory of server directory where computations execute (i.e., current working directory of computations). In earlier version all files are saved in each server, whereas now such files are saved only once.
    • Computation supports peers_communicate boolean flag. This option indicates that computations executing on remote servers can communicate among themselves; without this option (default), each computation can only communicate with the client. In earlier versions discoronode supported discover_peers for similar behavior; discover_peers is now dropped in favor of peers_communicate.
    • When RemoteCoroScheduler is used, it is no longer necessary for computation to be scheduled in client programs; RemoteCoroScheduler will schedule it.
    • discoro module supports DiscoroNodeAllocate to customize allocation of nodes / servers.
    • discoronode now uses separate UDP port 51351; in earlier versions nodes used 51350, same port used by clients and scheduler.
     
  • Giridhar Pemmasani

    I realized that I included some extraneous files in 'py2' branch (used for installing with Python 2.7). These are 'node.py', 'sched.py' and 'terse_diff.py'. Please ignore these files in this version.

     

Log in to post a comment.