New way to access library API's via macros and fields in mb_mgr structure.
The patch adds the following macros that utlize new handler fields in mb_mgr:
- IMB_GET_NEXT_JOB()
- IMB_SUBMIT_JOB()
- IMB_SUBMIT_JOB_NOCHECK()
- IMB_GET_COMPLETED_JOB()
- IMB_FLUSH_JOB()
- IMB_QUEUE_SIZE()
- IMB_AES_KEYEXP_128()
- IMB_AES_KEYEXP_192()
- IMB_AES_KEYEXP_256()
The handlers in mb_mgr structure are set up during multi-buffer manager
initialization so that they point to matching architecture implementations.
For example, init_mb_mgr_sse() will set up the handlers for SSE architecture.
Note that the above new interface to library functions may be less performant
than direct call to an API. However, it may simplify application implementation.
Both library interface options are available and it is up to application
developer to choose the best one.
Co-Authored-By:
Tomasz Kantecki <tomasz.kantecki@intel.com>
Loading
Please register or sign in to comment