Tag Archives: containers

How to Build Map Containers Faster with PTL for .NET

The last video in our Parallel Template Library (PTL) video series (.NET Sorted Dictionary vs. PTL Map32 – Add, Item & Remove Functions) demonstrated the performance of the insertion method of PTL’s map container for large data sets by comparing it to the equivalent .NET container. In our latest video, “How to Build Map Containers Faster with PTL for .NET,” we show how you can improve the performance even more by using pre-sorted elements when building a map.

The PTL Containers component for .NET and Java offers powerful data containers that have been optimized for parallelism and for large data sets, such as the Map containers that we demonstrate in this video. We compare the Insert and PushBack methods from PTL’s Map64 container to the equivalent Add method from the .NET SortedDictionary on a system with a quad-core processor and 32 GB of memory.

A map is a variable-sized collection of (key, value) pairs. Its primary usage is the efficient retrieval of elements (or values) based on their associated keys. It also implements the insertion and removal of elements very efficiently.

Read More >>

LinkedInGoogle+TwitterFacebookGoogle GmailShare

.NET Sorted Dictionary vs. PTL Map32 – Add, Item & Remove Functions

Our latest Parallel Template Library (PTL) video demonstrates the performance of PTL’s map container, Map32, for large data sets by comparing it to the equivalent .NET SortedDictionary container.

During the demo, we add, retrieve and remove 100 million elements (which consist of a key and a value) from both map containers on a system with a quad-core processor and 32 GB of memory. PTL’s Map32 inserted elements 3.8 times faster, retrieved elements 2.1 times faster and erased elements 2.8 times faster than .NET’s SortedDictionary.

A map is a variable-sized collection of (key, value) pairs. Its primary usage is the efficient retrieval of elements (or values) based on their associated keys. It also implements the insertion and removal of elements very efficiently.

PTL offers Map32 and Map64 classes that are very similar to the .NET SortedDictionary class. PTL maps differ from the .NET SortedDictionary because they have a Boolean property called “Unique” that is set in their constructor and indicates if the map allows or disallows duplicate keys. The .NET SortedDictionary only allows elements with unique keys. It’s also important to note that PTL’s Map32 and Map64 are not tuned for a 32 or 64-bit operating system; they only differ in their maximum size.

Read More >>

LinkedInGoogle+TwitterFacebookGoogle GmailShare

Parallel Template Library (PTL) for .NET and Java Overview (Video)

We’ve been working on a new video series to showcase our Parallel Template Library (PTL), which is a generic and parallel programming library for .NET and Java. Our first video gives an overview of PTL’s strengths and innovations:

Parallel Template Library (PTL) simplifies parallel performance for .NET and Java developers. We developed PTL for software developers who don’t have the time or resources to become parallel programming experts but who still want to take advantage of parallelism and multicore processors to improve the performance of their existing applications. We understand that not everyone will be as passionate about parallel programming as we are, but we strongly believe that it should be used more often to take advantage of modern hardware.

Often, expert software developers focus only on obtaining more performance, and parallel programming solutions are still too complex for the majority of developers. PTL achieves high performance parallelism while still being generic and easy to use.

Read More >>

LinkedInGoogle+TwitterFacebookGoogle GmailShare