Files
kernels/README.md
2021-04-05 14:09:01 -04:00

77 lines
2.1 KiB
Markdown

[![Build Status](https://travis-ci.org/vortexgpgpu/vortex.svg?branch=master)](https://travis-ci.org/vortexgpgpu/vortex)
[![codecov](https://codecov.io/gh/vortexgpgpu/vortex/branch/master/graph/badge.svg)](https://codecov.io/gh/vortexgpgpu/vortex)
# Vortex RISC-V GPGPU
Vortex is a full-system RISCV-based GPGPU processor.
Specifications
--------------
- Support RISC-V RV32I ISA
- Fully scalable: 1 to 16 cores with optional L2 and L3 caches
- OpenCL 1.2 Support
- FPGA target: Intel Arria 10 @ 200 MHz peak Freq
Directory structure
-------------------
- benchmarks: OpenCL and RISC-V benchmarks
- docs: [documentation](https://github.com/vortexgpgpu/vortex-dev/blob/master/doc/Vortex.md).
- hw: hardware sources.
- driver: driver software.
- runtime: runtime software for kernels.
- simX: Vortex cycle-approximate simulator.
- evaluation: synthesis and performance data.
Basic Installation
------------------
Install development tools
$ sudo apt-get install build-essential
$ sudo apt-get install git
Install gnu-riscv-tools
$ export RISCV_TOOLCHAIN_PATH=/opt/riscv-gnu-toolchain
$ sudo apt-get -y install \
binutils build-essential libtool texinfo \
gzip zip unzip patchutils curl git \
make cmake ninja-build automake bison flex gperf \
grep sed gawk python bc \
zlib1g-dev libexpat1-dev libmpc-dev \
libglib2.0-dev libfdt-dev libpixman-1-dev
$ git clone https://github.com/riscv/riscv-gnu-toolchain
$ cd riscv-gnu-toolchain
$ git submodule update --init --recursive
$ mkdir build
$ cd build
$ ../configure --prefix=$RISCV_TOOLCHAIN_PATH --with-arch=rv32im --with-abi=ilp32
$ make -j`nproc`
$ make -j`nproc` build-qemu
Install Verilator
You need into build the latest version using the instructions on their website
$ https://www.veripool.org/projects/verilator/wiki/Installing
Install Vortex
$ git clone --recursive https://github.com/vortexgpgpu/vortex.git
$ cd Vortex
$ make
Quick Test running OpenCL vecadd program
$ cd /Vortex/benchmarks/opencl/vecadd
$ make
$ make run-rtlsim