OpenCL-Headers-2025.07.22

Introduksjon til OpenCL-Headers

Denne siden dekker installasjonen av C- og C++ deklarasjonene til OpenCL API-et, som tillater kjøring av funksjoner, eller kjerner, på CPU-er og GPU-er. Dette kan øke hastigheten på visse handlinger, noe som gir bedre ytelse.

OpenCL-Headers Avhengigheter

Required
CMake-4.2.2

Optional
Doxygen, Graphviz, og Ruby-4.0.1

Laste ned OpenCL-Headers

Først, lag en liste over filer som skal lastes ned:

cat > ocl-headers-list << "EOF"
OpenCL-Headers/archive/v2025.07.22/OpenCL-Headers-2025.07.22.tar.gz
OpenCL-CLHPP/archive/v2025.07.22/OpenCL-CLHPP-2025.07.22.tar.gz
EOF

For å laste ned de nødvendige filene ved hjelp av Wget-1.25.0, bruk følgende kommandoer:

mkdir ocl-headers &&
cd    ocl-headers &&
grep -v '^#' ../ocl-headers-list | wget -i- -c \
    -B https://github.com/KhronosGroup/

Installasjon av OpenCL-Headers

[Notat]

Notat

Når du installerer flere pakker i et skript, må installasjonen gjøres som root bruker. Det finnes tre generelle alternativer som kan brukes til å gjøre dette:

  1. Kjør hele skriptet som root bruker (ikke anbefalt).

  2. Bruk sudo kommandoen fra sudo pakken.

  3. Use su -c "command arguments" (anførselstegn kreves) som vil be om root passordet for hver iterasjon av løkken.

En måte å håndtere denne situasjonen på er å lage en kort bash funksjon som automatisk velger riktig metode. Når kommandoen er satt i miljøet, trenger den ikke å settes på nytt.

as_root()
{
  if   [ $EUID = 0 ];        then $*
  elif [ -x /usr/bin/sudo ]; then sudo $*
  else                            su -c \\"$*\\"
  fi
}

export -f as_root

Først starter du et underskall som avsluttes ved feil:

bash -e

Installer alle pakkene ved å kjøre følgende kommandoer:

for package in OpenCL-{Headers,CLHPP}
do
  longpackage=$package-2025.07.22.tar.?z*
  packagedir=${longpackage%.tar.?z*}
  tar -xf $longpackage
  pushd $packagedir
    mkdir build
    cd    build
    cmake -D CMAKE_INSTALL_PREFIX=/usr \
          -D CMAKE_BUILD_TYPE=Release  \
          -D BUILD_TESTING=OFF         \
          -D BUILD_EXAMPLES=OFF        \
          -G Ninja ..
    as_root ninja install
  popd
  rm -rf $packagedir
done

Til slutt, avslutt skallet som ble startet tidligere:

exit

Innhold

Installerte Programmer: Ingen
Installerte Biblioteker: Ingen
Installerte Mapper: /usr/include/CL og /usr/share/cmake/OpenCLHeaders{,Cpp}