The CCA API can be called from multiple applications, and each application can be multi-threaded. Generally, greater throughput will be obtained when multiple requests are pending against the API.
The CCA code within the Coprocessor also employs a multi-threaded design. This design is changed for the code for the IBM 4758-002/023 and employs additional threads to significantly improve throughput when multiple requests are concurrently available for the Coprocessor. The multi-threaded design of Version 2 is an especial advantage when your host application(s) are capable of making concurrent requests to the CCA API. When multiple requests are processed, you might wish to consider the number of requests completed per time period as this can be more significant than the duration of any single request.
Your application performance is affected by factors such as:
- Host system processor type and PCI bus speed and contention
- The host-system operating system approach to paging and pinning of I/O memory
- Your approach to data alignment: Data fields aligned on 4-byte address boundaries are bus-master transferred directly from application storage. Otherwise, the device driver must copy and align the data.
"
- Your application design: capable of making concurrent requests for greater throughput, or single threaded.
Performance Demonstration Program
A sample program is available that you can compile and run to obtain performance information for your system. This program may also serve as a starting point in your efforts to benchmark the CCA offerings for the the IBM 4758 models. The program will operate with CCA Version 2 installations on AIX, Windows NT and Windows 2000 systems.
CCA API Version 2 / Models 002 and 023 Performance Results
The README.1st file included with the sample CCA performance program contains information about results achieved in two test systems for a variety CCA API-calls. You may wish to download and read that file for information.
The sample program demonstrates that typical mixtures of DES-oriented CCA calls can result in throughputs of 130 to 160 calls per second.
Using 1024-bit, 17-bit exponent, RSA keys and a multi-threaded host application program, the Version 2.x code accomplished:
- 140 digital signature generations per second
- 97 SET-block acquirer operations per second.
|