Banner.jpg

What is ttgLib?

ttgLib is a C++ library for parallel programs creation for hybrid architecture like CPU+GPU. It joins different APIs and extends them by providing additional parallel primitive ttg::pipeline, which has following advantages: Note: ttgLib does not wrap technologies, but really extends them. ttgLib only performs some initialization, allowing developer to use technology's API directly. This makes it possible to start using ttgLib in existing projects with existing code or update any SDK without being afraid of incompatibilities.

What platforms are supported by ttgLib?

Our goal is to support most of popular and flexible technologies and computing devices. Current state is: Targeted IDEs and compilers:

Is ttgLib fast?

Yes, ttgLib is fast. We've implemented some techniques, that gather statistics and use it for load redistribution and critical path finding. It allows us to parallelize problem better, than the native API. For example, in CPU-only tests we are not slower than Intel TBB, and in some tests we even outperforms it by 20%! Additional information on tests and testing machine configuration can be found at http://ttglib.org (Russian only).

How does it work?

ttgLib is C++ template oriented library that not only can easily implement simple tasks but implement complex tasks as well. For more information about solving typical problems refer to http://ttglib.org (Russian only). If you know an interesting problem and want to see it's solution using ttgLib – contact us. We will try to make a sample implementation of it.

About us

We are the students of Russian Universities. We have a lot of ideas and lack of free time for it. So if any announced idea is close to you – join us. Together we will rule the Galaxy!