FM_initialize(). May be called multiple times, with different parameters. Parameters currently supported are:
FM_register_handler(). [Default: 1024]
FM_set_parameter(FM_KEY_NAME,"I am the eggman");
FM_initialize() assigns initial values to the following
FM_numnodesrepresents the number of logical nodes (i.e. processes) that are currently part of the program.
FM_set_parameter(FM_MAX_HANDLERS,value)) or the following constant:
FM_register_handler()that the next available handler ID should be associated with handler.
FM_register_handler() returns the handler ID that was
assigned to handler
(id if id
A handler function must be registered by
before any call to
FM_extract() that could potentially invoke
that handler function. Handler functions may be registered with more
than one ID. If the id argument is already associated with a
FM_register_handler() will replace the old
association with id==>handler.
Client-server applications will generally use well-known IDs instead of
FM_ANY_ID, so the clients know what handlers to invoke on the
server. All other applications will generally use
because that prevents name conflicts when using multiple HPVM interfaces
in the same program. That is, the first interface that's initialized
gets handler IDs 1 ... k, and the second interface gets
handler IDs k+1 ... n. (This does imply that the
interfaces must be initialized in the same order by every process, to
FM_reallocate_credit()is a way for a process to tell the FM system that the maximum number of processes that will ever send to it are currently running and that FM should reallocate flow-control credits. The net effect is significantly improved performance for applications that can take advantage of this call.
FM termination is performed with the following function, which must be called by every process in the program:
Go to the first, previous, next, last section, table of contents.