PICTools Programmer's Reference
Notes

Intel P3 / 4 Specific Notes

Intel Pentium 3 and Pentium 4 processors included new capabilities for Streaming SIMD Extensions. Accusoft Corporation has taken advantage of these new capabilities to gain performance benefits in several of the technologies in the PICTools SDKs. At the current time, these include OP_SE2DPLUS for 12bpp grayscale compression.

By default these optimizations are enabled in each of the operations. The opcodes query the cpu to determine if the chip is SSE-capable and use the optimized code path if the chip contains these capabilities. However, the various MS Windows operating systems each provide different levels of support for the use of the new instructions.

Therefore the application will need to determine if it is running on an OS and a chip that supports SSE. If the system does NOT support these capabilities (even if the chip does) the application will need to instruct the opcode to NOT use the P3 optimizations. This is done at runtime by using the PF2_P3OptDisable flag.

Each of the sample programs for each of the technologies that make use of P3 optimizations include a sample routine for determining if the system supports the P3 optimizations.

Linux / Unix Specific Notes

Linux kernels before version 2.4 don't support XMM instructions. For opcodes that utilize XMM instructions, application developers will need to query the system for kernel version and set PF2_P3OptDisable in the opcode union if the kernel version is before 2.4.

 

 


©2022. Accusoft Corporation. All Rights Reserved.

Send Feedback