GASNet 1.10.0 (Default branch)


 
Thread Tools Search this Thread
Special Forums News, Links, Events and Announcements Software Releases - RSS News GASNet 1.10.0 (Default branch)
# 1  
Old 01-29-2008
GASNet 1.10.0 (Default branch)

GASNet (Global-Address Space Networking) is a language-independent low-level networking layer that provides network-independent, high-performance communication primitives tailored for implementing parallel global-address space SPMD languages such as UPC, Titanium, and Co-Array Fortran. The interface is primarily intended as a compilation target and for use by runtime library writers (as opposed to end users), and the primary goals are high performance, interface portability, and expressiveness. License: BSD License (revised) Changes:
IBM SP/LAPI was fixed to use RDMA on LAPI/Federation systems when available. A race condition on the Myrinet/GM conduit was fixed. A workaround was added for a thread-safety bug in CNL Portals on the Cray XT. Environment variable scoping issues on Infiniband were fixed. Initial high-performance collective operations using Active Messages were added. Checking for randomized Linux VM spaces, which may restrict certain features, was improved. Numerous bugs were fixed.Image

More...
Login or Register to Ask a Question

Previous Thread | Next Thread
Login or Register to Ask a Question
XtErrorMsgHandler()													       XtErrorMsgHandler()

Name
  XtErrorMsgHandler - interface definition for high-level error and warning handler procedures.

Synopsis
  typedef void (*XtErrorMsgHandler)(String, String, String, String, String *, Cardinal *);
	 String name;
	 String type;
	 String class;
	 String defaultp;
	 String *params;
	 Cardinal *num_params;

Inputs
  name	    Specifies the name that is concatenated with the specified type to form the resource name of the error message.

  type	    Specifies the type that is concatenated with the name to form the resource name of the error message.

  class     Specifies the resource class of the error message.

  defaultp  Specifies the default message to use if no error database entry is found.

  params    Specifies a pointer to a list of values to be substituted in the message.

  num_params
	    Specifies the number of values in the parameter list.

Description
  An  XtErrorMsgHandler is registered as a high-level error or warning handler with XtAppSetErrorMsgHandler() or XtAppSetWarningMsgHandler().
  It is invoked by XtAppErrorMsg() or XtAppWarningMsg().

  An XtErrorMsgHandler should look up an error message of the specified name, type, and class in an error database of some sort, and  display
  the  message	it finds, or use the supplied default defaultp.  Whether a message is found in a database or the default message is used, the
  specified params should be substituted into the message using standard printf() substitutions before it is displayed.

Usage
  A custom high-level error or warning handler may find it useful to use XtAppGetErrorDatabase() or XtAppGetErrorDatabaseText().  This latter
  function looks up an error message in a standard X resource database by concatenating the name and type arguments into the resource name of
  the message and using class as the resource class of the message.  See XtAppGetErrorDatabaseText(1) for more details.

  A high-level error or warning handler should generally display the message it builds by calling the corresponding  low-level	handler  with
  XtAppError() or XtAppWarning().  This allows customization at two independent levels of abstraction.

  Usually,  the name argument will describe the general kind of error, such as invalidParameters or invalidWindow, and the type argument pro-
  vides extra information about the error, such as the name of the function in which the error was detected.

  Note that application-context-specific error handling is not implemented in MIT release, though the XtApp version of all the error handling
  routines are present.  Most implementation will support only a single set of error handlers for all application contexts, and if a new han-
  dler is registered in one app context, it will take effect in all contexts.

Example
  The example below shows the Intrinsics default error message handler:

     void _XtDefaultErrorMsg (name,type,class,defaultp,params,num_params)
	 String name,type,class,defaultp;
	 String* params;
	 Cardinal* num_params;
     {
	 char buffer[1000], message[1000];
	 XtGetErrorDatabaseText(name,type,class,defaultp, buffer, 1000);

	 /*need better solution here, perhaps use lower level printf primitives? */
	 if (params == NULL    num_params == NULL    *num_params == 0)
	     XtError(buffer);
	 else {
	     int i = *num_params;
	     String par[10];
	     if (i > 10) i = 10;
	     bcopy( (char*)params, (char*)par, i * sizeof(String) );
	     bzero( &par[i], (10-i) * sizeof(String) );
	     (void) sprintf(message, buffer, par[0], par[1], par[2], par[3],
			    par[4], par[5], par[6], par[7], par[8], par[9]);
	     XtError(message);
	     if (i != *num_params)
		 XtWarning( "some arguments in previous message were lost" );
	 }
     }

See Also
  XtAppErrorMsg(1), XtAppSetErrorMsgHandler(1), XtAppSetWarningMsgHandler(1), XtAppWarningMsg(1),
  XtErrorHandler(2).

Xt - Error Handling													       XtErrorMsgHandler()