Skip to content

A tool allowing students of Coursera's Heterogeneous Parallel Programming to work on homework using a machine without a CUDA GPU.

Notifications You must be signed in to change notification settings

sean-dougherty/cuda-edu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

cuda-edu is a tool for students of the Coursera Heterogeneous Parallel Programming course that allows for homework assignments to be developed on a local machine without a CUDA GPU. It should be possible to use exactly the same source code with both cuda-edu and WebGPU. It is not officially sanctioned by the staff of Heterogenous Parallel Programming. It is just a tool created by a CTA (Community Teaching Assistant).

What is it?

cuda-edu, essentially, emulates nvcc, libwb, and the CUDA runtimes. It translates your CUDA code into standard C++ code that can be executed on your CPU.

Why use it?

You can do local development and use your debugger to step through your code as it executes on your CPU. Also, cuda-edu injects code that will detect buffer overflows. Your program will trap immediately if you try to dereference a bad offset in your host, device-global, or device-shared buffers.

System Requirements

The primary requirements are a C++11 compiler and libclang. Currently, Linux, Mac, and Windows are supported.

Getting Started

Installation instructions are hosted on the Wiki. Please see the page for your OS:

About

A tool allowing students of Coursera's Heterogeneous Parallel Programming to work on homework using a machine without a CUDA GPU.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published