Blaise Tine 51e621cdf1 minor update
2023-12-28 16:08:26 -08:00
2023-12-28 12:12:11 -08:00
2023-11-14 05:37:46 -08:00
2023-10-19 20:51:22 -07:00
2023-10-19 20:51:22 -07:00
2023-12-28 16:08:26 -08:00
2023-12-28 12:12:11 -08:00
2023-12-28 12:22:22 -08:00
2023-11-10 02:47:05 -08:00
2020-08-25 07:10:45 -04:00
2023-11-10 02:47:05 -08:00
2023-11-11 15:49:39 -08:00
2023-11-10 02:47:05 -08:00
2023-11-10 02:47:05 -08:00
2023-11-10 02:47:05 -08:00
2019-11-07 20:52:36 -05:00

Build Status codecov

Vortex GPGPU

Vortex is a full-stack open-source RISC-V GPGPU.

Specifications

  • Support RISC-V RV32IMAF and RV64IMAFD
  • Microarchitecture:
    • configurable number of cores, warps, and threads.
    • configurable number of ALU, FPU, LSU, and SFU units per core.
    • configurable pipeline issue width.
    • optional shared memory, L1, L2, and L3 caches.
  • Software:
    • OpenCL 1.2 Support.
  • Supported FPGAs:
    • Altera Arria 10
    • Altera Stratix 10
    • Xilinx Alveo U50, U250, U280
    • Xilinx Versal VCK5000

Directory structure

  • doc: Documentation.
  • hw: Hardware sources.
  • driver: Host drivers repository.
  • runtime: Kernel Runtime software.
  • sim: Simulators repository.
  • tests: Tests repository.
  • ci: Continuous integration scripts.
  • miscs: Miscellaneous resources.

Build Instructions

Supported OS Platforms

  • Ubuntu 18.04
  • Centos 7

Toolchain Dependencies

Install development tools

$ sudo apt-get install build-essential
$ sudo apt-get install git

Install Vortex codebase

$ git clone --recursive https://github.com/vortexgpgpu/vortex.git
$ cd Vortex

Install prebuilt toolchain

By default, the toolchain will install to /opt folder. 
You can install the toolchain to a different directory by overriding TOOLDIR (e.g. export TOOLDIR=$HOME/tools).

$ ./ci/toolchain_install.sh --all
$ source ./ci/toolchain_env.sh

Build Vortex sources

$ make -s

Quick demo running vecadd OpenCL kernel on 2 cores

$ ./ci/blackbox.sh --cores=2 --app=vecadd
Description
No description provided
Readme Apache-2.0 314 MiB
Languages
C++ 30%
PostScript 29.1%
SystemVerilog 13.3%
Verilog 12.7%
C 8.4%
Other 6.4%