PTL’s functionality is split into several components (shown in the table below), which are sold separately. The Tasks component is completely free to use, so you can download it today to get started with PTL! The remaining PTL components have fully-functional free trials that you can also download today.
For example, PTL offers parallel for loop and invoke methods for data and task parallelism, which are currently not available in the Java standard library. The .NET Task Parallel Library already offers parallel for loop and invoke methods, but PTL also offers hundreds of ready-to-use parallel methods for many common algorithms (see PTL components below for examples).
The PTL functions mentioned above are generic functions which work with any type of data. Also, the PTL components are completely decoupled, which allows developers to easily extend PTL’s design for more specific needs (e.g. developers can write custom algorithms that work with PTL containers and custom containers that work with PTL algorithms).
The PTL components are dependent on four additional PTL components (shown in the table below). These additional components are bundled with the dependent components, and you can use their functionality for more advanced development with PTL. You can view each supporting component's online documentation for more information.