Merge pull request #226295 from Flakebi/rocm-gfx8

authored by

Bernardo Meurer and committed by
GitHub
f098c163 5e4c2ada

+81 -3
+4 -1
pkgs/development/rocm-modules/5/clr/default.nix
··· 147 147 }; 148 148 149 149 impureTests = { 150 - clr-icd = callPackage ./test.nix { 150 + rocm-smi = callPackage ./test-rocm-smi.nix { 151 151 inherit rocm-smi; 152 + clr = finalAttrs.finalPackage; 153 + }; 154 + opencl-example = callPackage ./test-opencl-example.nix { 152 155 clr = finalAttrs.finalPackage; 153 156 }; 154 157 };
+75
pkgs/development/rocm-modules/5/clr/test-opencl-example.nix
··· 1 + { lib 2 + , stdenv 3 + , makeImpureTest 4 + , fetchFromGitHub 5 + , clr 6 + , cmake 7 + , pkg-config 8 + , glew 9 + , freeglut 10 + , opencl-headers 11 + , ocl-icd 12 + }: 13 + 14 + let 15 + 16 + examples = stdenv.mkDerivation { 17 + pname = "amd-app-samples"; 18 + version = "2018-06-10"; 19 + 20 + src = fetchFromGitHub { 21 + owner = "OpenCL"; 22 + repo = "AMD_APP_samples"; 23 + rev = "54da6ca465634e78fc51fc25edf5840467ee2411"; 24 + hash = "sha256-qARQpUiYsamHbko/I1gPZE9pUGJ+3396Vk2n7ERSftA="; 25 + }; 26 + 27 + nativeBuildInputs = [ cmake pkg-config ]; 28 + 29 + buildInputs = [ glew freeglut opencl-headers ocl-icd ]; 30 + 31 + installPhase = '' 32 + runHook preInstall 33 + 34 + mkdir -p $out/bin 35 + # Example path is bin/x86_64/Release/cl/Reduction/Reduction 36 + cp -r bin/*/*/*/*/* $out/bin/ 37 + 38 + runHook postInstall 39 + ''; 40 + 41 + cmakeFlags = [ "-DBUILD_CPP_CL=OFF" ]; 42 + 43 + meta = with lib; { 44 + description = "Samples from the AMD APP SDK (with OpenCRun support) "; 45 + homepage = "https://github.com/OpenCL/AMD_APP_samples"; 46 + license = licenses.bsd2; 47 + platforms = platforms.linux; 48 + maintainers = lib.teams.rocm.members; 49 + }; 50 + }; 51 + 52 + in 53 + makeImpureTest { 54 + name = "opencl-example"; 55 + testedPackage = "rocmPackages_5.clr"; 56 + 57 + sandboxPaths = [ "/sys" "/dev/dri" "/dev/kfd" ]; 58 + 59 + nativeBuildInputs = [ examples ]; 60 + 61 + OCL_ICD_VENDORS = "${clr.icd}/etc/OpenCL/vendors"; 62 + 63 + testScript = '' 64 + # Examples load resources from current directory 65 + cd ${examples}/bin 66 + echo OCL_ICD_VENDORS=$OCL_ICD_VENDORS 67 + pwd 68 + 69 + HelloWorld | grep HelloWorld 70 + ''; 71 + 72 + meta = with lib; { 73 + maintainers = teams.rocm.members; 74 + }; 75 + }
+2 -2
pkgs/development/rocm-modules/5/clr/test.nix pkgs/development/rocm-modules/5/clr/test-rocm-smi.nix
··· 6 6 }: 7 7 8 8 makeImpureTest { 9 - name = "clr-icd"; 10 - testedPackage = "rocmPackages.clr"; 9 + name = "rocm-smi"; 10 + testedPackage = "rocmPackages_5.clr"; 11 11 nativeBuildInputs = [ clinfo rocm-smi ]; 12 12 OCL_ICD_VENDORS = "${clr.icd}/etc/OpenCL/vendors"; 13 13