No description
Find a file
donghanyuan b0d1b02859 replace local static allocator to global static
Ensure MemoryPool construct before SimPlatform,
thus MemoryPool destruct after SimPlatform.

Avoid use-after-free issue clearing events_ of SimPlatform
after SimPortEvent's allocator is destructed.
2024-08-13 18:06:53 +08:00
ci enabling temporary build directory for blackbox multiple instances 2023-12-28 20:06:10 -08:00
docs Docs update 2024-01-10 15:56:22 -05:00
hw minor update 2024-01-28 17:34:07 -08:00
kernel change function fast_log to log2_fast 2023-11-29 17:55:43 -05:00
miscs Vortex 2.0 changes: 2023-11-10 02:47:05 -08:00
perf Vortex 2.0 changes: 2023-11-10 02:47:05 -08:00
runtime minor update 2023-12-31 11:46:41 -08:00
sim replace local static allocator to global static 2024-08-13 18:06:53 +08:00
tests update git ignore 2024-05-14 13:52:17 +09:00
third_party Vortex 2.0 changes: 2023-11-10 02:47:05 -08:00
.codecov.yml Create .codecov.yml 2020-08-25 07:10:45 -04:00
.gitignore update git ignore 2024-05-14 13:52:17 +09:00
.gitmodules Vortex 2.0 changes: 2023-11-10 02:47:05 -08:00
.travis.yml minor update 2023-11-11 15:49:39 -08:00
LICENSE Vortex 2.0 changes: 2023-11-10 02:47:05 -08:00
Makefile Vortex 2.0 changes: 2023-11-10 02:47:05 -08:00
README.md Docs update 2024-01-10 15:56:22 -05: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 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

More detailed build instructions can be found here.

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