wsl环境下安装运行GPGPU-sim

在安装GPGPU-sim前需要安装CUDA

安装CUDA

从 Nvidia 官网网站下载适用于WSL Ubuntu 的 CUDA,在此选择的版本为 11.8.0(具体请参考例如 Tensorflow 等所需工具的依赖版本),相关平台选项如下:

Operating System:Linux
Architecture:x86_64
Distribution:WSL-Ubuntu
Version:2.0
Installer Type:runfile (local)

下载完毕后运行如下命令进行安装:

chmod +x cuda_11.8.0_520.61.05_linux.run
sudo ./cuda_11.8.0_520.61.05_linux.run --toolkit

其中 --toolkit 表示仅安装 CUDA 工具箱。
image
在弹出的 EULA 界面输入 accept 进入安装选项界面:
image
仅保留 CUDA Toolkit 11.8 即可,切换到 Install 并按回车键进行安装。
将如下内容添加到 ~/.bashrc 文件尾部:

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64
export CUDA_INSTALL_PATH=/usr/local/cuda

通过 source ~/.bashrc 或 source ~/.zshrc 使路径立即生效。输入 nvcc -V 查看 CUDA 编译器驱动版本:
image

编译安装GPGPU-sim

安装依赖
sudo apt-get install build-essential xutils-dev bison zlib1g-dev flex libglu1-mesa-dev
克隆获取代码 && 编译

git clone https://github.com/gpgpu-sim/gpgpu-sim_distribution.git
cd gpgpu-sim_distribution
source setup_environment
make

至此,gpgpu-sim库已经编译完成
测试
创建CU测试文件hello.cu

/* file: hello.cu */
#include <stdio.h>
#include <cuda_runtime.h>

__global__ void add(int a, int b, int *c)
{
    *c = a + b;
}

int main()
{
    int *c;
    c = (int*)malloc(sizeof(int));
    int *dev_c;
    cudaMalloc((void **)&dev_c, sizeof(int));
    add<<<1, 1>>>(2, 7, dev_c);
    cudaMemcpy(c, dev_c, sizeof(int), cudaMemcpyDeviceToHost);
    printf("2 + 7 = %d\n",*c);

    return 0;
}

编译执行

source ../setup_environment #如果需要编译debug版,直接后面指定debug
nvcc -lcudart -o hello hello.cu
#nvcc --cudart shared -o hello hello.cu
ldd hello #确认是不是链接的gpgpu-sim编译的库
cp ../configs/tested-cfgs/SM86_RTX3070/* ./ #拷贝配置文件
./hello

参考:
https://leovan.me/cn/2023/03/gpu-machine-learning-environment-configuration-under-windows-with-wsl2-and-ubuntu/
https://zhuanlan.zhihu.com/p/369673760

posted @ 2025-06-19 15:03  King--jin  阅读(126)  评论(0)    收藏  举报