ispc is a compiler for a variant of the C programming language, with extensions for single programs, and multiple data programming. Under the SPMD model, the programmer writes a program that generally appears to be a regular serial program, though the execution model is actually that a number of program instances execute in parallel on the hardware. ispc compiles a C-based SPMD programming language to run on the SIMD units of CPUs and GPUs; it frequently provides a 3x or more speedup on architectures with 4-wide vector SSE units and 5x-6x on architectures with 8-wide AVX vector units, without any of the difficulty of writing intrinsics code. Parallelization across multiple cores is also supported by ispc, making it possible to write programs that achieve performance improvement that scales by both numbers of cores and vector unit size. Build a small set of extensions to the C language that would deliver excellent performance to performance-oriented programmers.

Features

  • Thin abstraction layer between the programmer and the hardware
  • Harness the computational power of SIMD vector units without the extremely low-programmer-productivity activity of directly writing intrinsics
  • Explore opportunities from close coupling between C/C++ application code and SPMD ispc code running on the same processor
  • Have lightweight function calls between the two languages and to share data directly via pointers without copying or reformatting
  • Familiarity as an extension of the C programming language: ispc supports familiar C syntax and programming idioms, while adding the ability to write SPMD programs
  • High-quality SIMD code generation: the performance of code generated by ispc is often close to that of hand-written intrinsics code

Project Activity

See All Activity >

License

BSD License

Follow ispc

ispc Web Site

Other Useful Business Software
AI-generated apps that pass security review Icon
AI-generated apps that pass security review

Stop waiting on engineering. Build production-ready internal tools with AI—on your company data, in your cloud.

Retool lets you generate dashboards, admin panels, and workflows directly on your data. Type something like “Build me a revenue dashboard on my Stripe data” and get a working app with security, permissions, and compliance built in from day one. Whether on our cloud or self-hosted, create the internal software your team needs without compromising enterprise standards or control.
Try Retool free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of ispc!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

C++

Related Categories

C++ Software Development Software, C++ Compilers

Registered

2022-05-24