IBM Dynamic Application Virtualization
A technology that enables computationally-intensive applications to take advantage of accelerated libraries on remote, back-end systems (including Cell Broadband Engine), reducing time to deployment and disruption to business.
Date Posted: September 27, 2007
|
|
 |
 |
|
 |  The User Guide is located on the Requirements tab of this alphaWorks® Web page. | | |
 |  In order to run the Tooling, the Client is also required; however, the IBM Dynamic Application Virtualization-enabled client application can be executed on a machine with only the Client installed.
| | |
 |  The log file's location can be configured in the IBM_DAV.conf file using the following parameters: dav.log.directory and dav.log.filename. | | |
 |  Under the IBM Dynamic Application Virtualization Client installation area; this area is, by default as follows:
- Windows: C:\Program Files\IBM\IBM DAV Tooling\davGen
- Linux: /usr/davtooling/davGen
| | |
 |  The default location is as follows:
- Windows: C:\Program Files\IBM\DAV\IBM_DAV.conf
- Linux: /usr/davclient/IBM_DAV.conf
Otherwise, the file can be found in the user-selected installation location for the IBM Dynamic Application Virtualization Client.
| | |
 |  Semantic input is used to provide size information for array or pointer function parameters to the IBM Dynamic Application Virtualization Tooling stub generator.
| | |
 |  Compilation errors or unexpected behavior may occur. To avoid these errors, the semantic verifier should be used to test semantics locally, before deployment to the grid.
| | |
 |  This phrase means that the client application is rebuilt using the IBM Dynamic Application Virtualization Tooling-generated stub libs. This rebuilding allows the client to connect to the IBM Dynamic Application Virtualization Service running on the remote server. | | |
 |  The IBM Dynamic Application Virtualization Tooling process must be repeated. | | |
 |  No; please use a different port for each new service. | | |
 |  Yes, if different services have been specified in the IBM_DAV.conf file. You merely need call the following: ./dav start
| | |
 |  Use the following: ./dav stop
| | |
 |  Yes, using the following: ./davServiceBroker
| | |
 |  Use the following: ./davServiceBroker –s | | |
 |  Yes, the port for the client and service interface must be defined in the IBM_DAV.conf file, as follows:
dav.broker.listen.services.port=4321
dav.broker.listen.clients.port=4320
|
| | |
 |  The log file's location can be configured in the IBM_DAV.conf file using the following parameters: dav.log.directory and dav.log.filename. | | |
 |  $IBM_DAV_PATH/IBM_DAV.conf | | |
 |  ./dav will look for the IBM_DAV.conf in the current directory and under the $IBM-DAV_PATH. | | |
 |  By default, they are expected to be in $IBM_DAV_PATH/bin. The location can be configured. | | |
 |  Yes. | | |
 |  The automatic deployment tool requires that the IBM_DAV_PATH environment variable be set for the required users. | | |
 |  Currently it supports only two-dimensional arrays. | | |
 |  Yes. Server-side memory allocation can be specified by using @param[out] in the semantics. | | |
 |  Not currently. | | |
 |  One level is supported. | | |
 |  The new service will not start. A different port must be taken. | | |
 |  In C, chars are 8-bit, unsigned integers, and IBM Dynamic Application Virtualization maps chars to bytes in Java. Because bytes in Java are 8-bit signed integers, when the result comes back, DAV returns the correct value to the Java client and Java then interprets the number as a signed number. This is the reason for the incorrect result.
| | |
 |  Yes. A VBA function call to the relevant IBM Dynamic Application Virtualization stub lib should be created.
For VBA-to-C-type mapping, please see How to Access DLLs in Excel.
| | |
 |  LD_LIBRARY_PATH must be exported to $IBM_DAV_PATH/lib:. | | |
 |  Yes, you merely need set in the IBM_DAV.conf file the following setting:
dav.broker.listen.services.ip=127.0.0.1 | | |
 |  This number determines how many requests the service broker will allow to run simultaneously on the same node. It must be defined in the IBM_DAV.conf file of the execution node.
| | |
 |  No. The @library semantic tag can be used to specify an alternate name. | | |
 |  Yes, if they are on different nodes. | | |
 |  Logs are generated only if errors occur during code generation. The log file can be found in the client directory of the generated code. | | |
 |  This is the sample user list file included for automatic deployment. The first line of this file refers to the build machine (that is, where the *_oai.so library is built). The second and subsequent lines refer to the deployment (that is, where the libraries are deployed). | | |
 |  No. They can be started by any user, but they must be stopped by the same user. | | |
 |  When yourLibName_stub.dll is generated through DavGen from the C header file, it automatically prepares VBA equivalent function stubs. The VBA functions are denoted with the same name as their C/Java counterpart, but with a trailing _VBA.
From your spreadsheet, declare the individual functions you wish to use from the dll. This declaration references the Lib yourLibName_stub.dll (which must be in your PATH), gives the DLL internal function name (such as calculate_Array_VBA) as an alias, and specifies the parameters in their VBA equivalents: ByRef for arrays and pointers, ByVal for values, As Long for C int, As Byte for C Char, etc. This is shown in Module 1 in the included sample:
Declare Function Library_calculate_remote Lib "Library_stub.dll" Alias "calculate_Array_VBA"
(ByRef array1 As Double, ByRef array2 As Double, ByVal value As Long) As Double
|
The name used to declare the function is the one used to invoke the function from elsewhere in the spreadsheet:
Dim result As Double
result = Library_calculate_remote( array1(0), array2(0), arraySize )
|
Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both.
IBM and alphaWorks are trademarks of IBM Corporation in the United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.
| |
|
|
 |
|
| |