Simulation Theory Inc Logo
Thunder and Lightning SDK Logos

The Sim Theory SDKs

Simulation Theory’s team of engineers have harnessed their combined decades of experience in high-performance computing, software architecture, hardware architecture, multi-threaded applications, and performance optimization to revolutionize the way computers process work and help businesses fully use the computing power they already pay for.

Sim Theory has developed and released the Thunder and Lightning software development kits (SDKs) to directly address the fundamental challenge of scaling work on up to 128 threads per scheduler instance. The SDKs are designed to be integrated into source code and complement, not replace, scheduling done by the operating system. Our custom, optimized libraries facilitate more efficient processing of data and scheduling of work so that all available hardware can be used to process work in parallel without needing a deep knowledge of threading and thread synchronization.

How do the Thunder and Lightning SDKs work?

Using the Sim Theory SDKs, the work that has typically been completed serially (A,B,C,D) can be done in parallel. Using the proprietary Scheduler API, the work to be completed is described in a manner that maintains execution order and data dependencies. With this information, our Scheduler generates packets of execution that will be processed by the Sim Theory Scheduler. All available cores can be used to process thousands of A’s simultaneously, then begin on thousands of B’s, then C’s and D’s as soon as cores become available. Computational power is therefore used more efficiently, enabling work to be completed faster on the same hardware. This allows the customer to decide whether to transition to more cost-efficient hardware or add more work to be completed using the reclaimed computational power.

Which product is right for you?

Thunder SDK

Thunder is a software development kit that is designed for enterprise businesses that are using a hosted provider such as AWS or GCE or have on premises compute resources. It is designed for use on device, edge, server, and cloud infrastructure. The Thunder SDK supports Intel and AMD 64-bit CPUs running a Windows or Linux operating system and ARM64 CPUs using a Linux or Android operating system. Additional operating systems and CPU architecture support is on the development roadmap. If you need an OS or CPU architecture that is not yet supported, please contact us.

Lightning SDK

Lightning is a software development kit that is designed for use when developing a retail product such as a video game, media playback solutions, mobile applications, and more. The Lightning SDK supports Intel and AMD 64-bit CPUs running Windows or Linux operating systems and ARM64 CPUs running a Linux or Android operating system. Upcoming releases will support MacOS and iOS. Additional operating systems and CPU architecture support is on the development roadmap. If you need an OS or CPU architecture that is not yet supported, please contact us.

Professional Services

Simulation Theory offers custom licensing to support customers with more diverse needs. If you aren’t sure which SDK is the best fit or need a bespoke solution, our team is ready to assist.

What problems can the SDKs solve?

When customers come to Simulation Theory looking to solve a problem or improve an existing solution, we most often find that their processing capability is throttled by at least one of the following five limitations.

  • CPU Underutilization - Most software only effectively uses one to four CPU cores, while many modern CPUs contain eight or more cores. The Sim Theory SDKs allow developers to write efficient multi-threaded applications without requiring a deep knowledge of hardware architecture, drivers, or software features.
  • Irregular Use of the GPU - The GPU cannot receive enough tasks to be fully utilized unless the CPU is being used efficiently enough to process both the work assigned to it and the work necessary to transform data for the GPU. The Sim Theory SDKs make the CPU efficient enough to send adequate data to the GPU. This efficient use of the GPU means that running cutting edge hardware is not usually necessary.
  • Memory Access - It's slow when compared to CPU speeds and cloud instances with large amounts of RAM are costly. When the Simulation Theory SDK is integrated and execution is parallelized, it is often faster and cheaper to recompute than it is to read cached results from memory.
  • File IO Speed - It's very slow compared to memory access speeds and CPU speeds. The Simulation Theory SDK enables the mixing of functionally parallel and data parallel execution within the same scheduler as well as a growing number of asynchronous containers and algorithms to ease use and integration.
  • Complex or Hidden Performance Challenges - Proper profiling identifies bottlenecks in performance. Sim Theory can provide general recommendations or custom support.

How do developers integrate the SDKs?

The Thunder and Lighting SDKs require integration with application or service source code. They currently provide a C API and C# bindings.

Depending on the complexity of the application or service’s source code, integration can be done at a top level domain or in a more integrated manner. A typical top level integration takes anywhere from a few hours to a few days. A deeper, more complex integration generally results in greater performance gains, but the integration time is highly variable and dependent on the complexity of the source code and the performance goals.

Simulation Theory Inc.

Copyright © 2019-2025 Simulation Theory Inc. All rights reserved.