SMT is a feature of the IBM POWER5 and later processors that enables two or four (on POWER7) threads of execution on each processor core.
This feature is similar to hyperthreading on Intel processors.
SMT is not equivalent to having four complete processors but does allow some workload to operate simultaneously.
SMT is not effective with some types of workloads and should sometimes be turned off (for example: in specific heavy floating point compute intensive workloads).
Most workloads do not need specific coding for SMT.
The operating system schedules processes and threads. OpenEdge does not interfere with that. So some parts of OpenEdge benefit from SMT while others do not. The ABL runtime is not multithreaded so it does not benefit directly from SMT for one user's application instance. Multiple users can execute their application processes simultaneously in the SMT environment.
The OpenEdge database server environment, is made up of multiple processes that perform various functions like writing dirty database pages to disk, writing to the transaction logs, etc. There are two types of server processes: ABL and SQL. These processes can execute concurrently and benefit from SMT.
The OpenEdge SQL servers and several database utilities are multi-threaded and benefit from SMT.