No description
Find a file
2023-07-05 22:04:32 -04:00
ci minor update 2023-07-04 12:43:38 -04:00
docs minor update 2023-07-05 19:01:31 -04:00
hw minor update 2023-07-05 22:04:32 -04:00
kernel imadd feature deprecation 2023-07-03 00:13:45 -04:00
miscs llvm-riscv => using llvm-vortex 2023-02-15 00:50:26 -05:00
perf minor update 2023-07-04 12:45:39 -04:00
runtime imadd feature deprecation 2023-07-03 00:13:45 -04:00
sim imadd feature deprecation 2023-07-03 00:13:45 -04:00
tests minor update 2023-07-05 20:03:31 -04:00
third_party update thirdparty dependencies 2023-06-08 22:53:59 -04:00
.codecov.yml Create .codecov.yml 2020-08-25 07:10:45 -04:00
.gitmodules using ramulator dram simulator 2021-12-06 01:22:45 -05:00
.travis.yml minor updates 2023-07-02 18:27:03 -04:00
LICENSE Update LICENSE 2021-07-13 18:56:12 -04:00
Makefile Fix ifdef for 32 bit, add make commands for rtl 2023-05-10 22:55:27 -04:00
README.md minor update 2023-07-04 12:40:09 -04:00
RELEASE LKG FPGA build - Passed basic, demo, vecadd kernels 2020-07-01 09:39:53 -07:00
TODO TODO update 2019-11-07 20:52:36 -05:00

Build Status codecov

Vortex RISC-V GPGPU

Vortex is a full-system RISCV-based GPGPU processor.

Specifications

  • Support RISC-V RV32IMAF & RV64IMAFD ISAs
  • Performance:
    • 1024 total threads running at 250 MHz
    • 128 Gflops of compute bandwidth
    • 16 GB/s of memory bandwidth
  • Scalability: up to 64 cores with optional L2 and L3 caches
  • Software: OpenCL 1.2 Support
  • Supported FPGAs:
    • Intel Arria 10
    • Intel Stratix 10

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

$ ./ci/toolchain_install.sh --all

By default, the toolchain will install to /opt folder. You can install the toolchain to a different directory by overiding DESTDIR.

$ DESTDIR=$TOOLDIR ./ci/toolchain_install.sh --all
$ export VORTEX_HOME=$TOOLDIR/vortex
$ export LLVM_VORTEX=$TOOLDIR/llvm-vortex
$ export LLVM_POCL=$TOOLDIR/llvm-pocl
$ export RISCV_TOOLCHAIN_PATH=$TOOLDIR/riscv-gnu-toolchain
$ export VERILATOR_ROOT=$TOOLDIR/verilator
$ export PATH=$VERILATOR_ROOT/bin:$PATH 

Build Vortex sources

$ make -s

Quick demo running vecadd OpenCL kernel on 2 cores

$ ./ci/blackbox.sh --cores=2 --app=vecadd