====== Instalación de PyTorch ====== ===== UPDATE ===== En un enviroment, realizar: python3.9 -m pip install torch==2.7.0 torchvision==0.22.0 torchaudio==2.7.0 --index-url https://download.pytorch.org/whl/xpu Realizamos la instalación utilizando pip utilizando un reverse tunnel de ssh para proveer al login node de conexión a red. Partimos de las instrucciones que se encuentran en la [[https://pytorch-extension.intel.com/installation?platform=gpu&version=v2.7.10%2Bxpu&os=linux%2Fwsl2&package=pip | Intel® Extension for PyTorch* Installation Guide]]. ===== Paso 1: Setear enviroment ===== Utilizar la versión de Python que se encuentra en el paquete OneAPI. El mismo es Python 3.9. source /opt/intel/oneapi/setvars.sh $ python --version Python 3.9.19 :: Intel Corporation $ which python /opt/intel/oneapi/intelpython/python3.9/bin/python [[internet_over_ssh|Configurar túnel SSH]]. Instalar [[internet_over_ssh#pip| PySocks]] chequear que las variables ''$http_proxy'' y ''$https_proxy'' estén correctamente seteadas.. Crear un enviroment: python -m venv venv_pytorch ===== Paso 2: Correr script de instalación ===== Guardar el siguiente script como ''pytorch_install.sh''. #!/bin/bash source venv_pytorch/bin/activate # 1. Actualizar pip y instalar typing-extensions primero pip install --upgrade pip && \ pip install typing-extensions==4.12.2 --no-deps # 2. Descargar e instalar triton-xpu curl -LO https://download.pytorch.org/whl/pytorch_triton_xpu-3.3.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl && \ pip install pytorch_triton_xpu-3.3.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl # 3. Instalar dependencias pip install filelock fsspec jinja2 networkx sympy>=1.13.3 pillow!=9.3.*,>=5.3.0 # 4. Instalar dependencias XPU pip install --no-deps \ intel-sycl-rt==2025.0.4 \ intel-cmplr-lib-ur==2025.0.4 \ intel-pti==0.10.1 \ umf==0.9.1 \ --extra-index-url https://download.pytorch.org/whl/pytorch-triton-xpu/ # 5. Instalar paquetes principales de PyTorch XPU pip install --no-deps \ torch==2.7.0+xpu \ torchvision==0.22.0+xpu \ torchaudio==2.7.0+xpu \ --extra-index-url https://download.pytorch.org/whl/xpu # 6. Instalar Intel Extension y oneCCL pip install \ intel-extension-for-pytorch==2.7.10+xpu \ oneccl_bind_pt==2.7.0+xpu \ --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/us/ Lanzar script: chmod +X pytorch_install.sh ./pytorch_install.sh ===== Paso 3: Sanity Check ===== srun --nodes=1 --ntasks-per-node=1 --partition=gpunode bash -c ' source venv_pytorch/bin/activate && \ python < El output debería mostrar algo así: Device [0]: _XpuDeviceProperties(name='Intel(R) Data Center GPU Max 1550', platform_name='Intel(R) oneAPI Unified Runtime over Level-Zero', type='gpu', driver_version='1.3.27642', total_memory=65536MB, max_compute_units=512, gpu_eu_count=512, gpu_subslice_count=64, max_work_group_size=1024, max_num_sub_groups=64, sub_group_sizes=[16 32], has_fp16=1, has_fp64=1, has_atomic64=1) Device [1]: _XpuDeviceProperties(name='Intel(R) Data Center GPU Max 1550', platform_name='Intel(R) oneAPI Unified Runtime over Level-Zero', type='gpu', driver_version='1.3.27642', total_memory=65536MB, max_compute_units=512, gpu_eu_count=512, gpu_subslice_count=64, max_work_group_size=1024, max_num_sub_groups=64, sub_group_sizes=[16 32], has_fp16=1, has_fp64=1, has_atomic64=1) Device [2]: _XpuDeviceProperties(name='Intel(R) Data Center GPU Max 1550', platform_name='Intel(R) oneAPI Unified Runtime over Level-Zero', type='gpu', driver_version='1.3.27642', total_memory=65536MB, max_compute_units=512, gpu_eu_count=512, gpu_subslice_count=64, max_work_group_size=1024, max_num_sub_groups=64, sub_group_sizes=[16 32], has_fp16=1, has_fp64=1, has_atomic64=1) Device [3]: _XpuDeviceProperties(name='Intel(R) Data Center GPU Max 1550', platform_name='Intel(R) oneAPI Unified Runtime over Level-Zero', type='gpu', driver_version='1.3.27642', total_memory=65536MB, max_compute_units=512, gpu_eu_count=512, gpu_subslice_count=64, max_work_group_size=1024, max_num_sub_groups=64, sub_group_sizes=[16 32], has_fp16=1, has_fp64=1, has_atomic64=1) Device [4]: _XpuDeviceProperties(name='Intel(R) Data Center GPU Max 1550', platform_name='Intel(R) oneAPI Unified Runtime over Level-Zero', type='gpu', driver_version='1.3.27642', total_memory=65536MB, max_compute_units=512, gpu_eu_count=512, gpu_subslice_count=64, max_work_group_size=1024, max_num_sub_groups=64, sub_group_sizes=[16 32], has_fp16=1, has_fp64=1, has_atomic64=1) Device [5]: _XpuDeviceProperties(name='Intel(R) Data Center GPU Max 1550', platform_name='Intel(R) oneAPI Unified Runtime over Level-Zero', type='gpu', driver_version='1.3.27642', total_memory=65536MB, max_compute_units=512, gpu_eu_count=512, gpu_subslice_count=64, max_work_group_size=1024, max_num_sub_groups=64, sub_group_sizes=[16 32], has_fp16=1, has_fp64=1, has_atomic64=1) Device [6]: _XpuDeviceProperties(name='Intel(R) Data Center GPU Max 1550', platform_name='Intel(R) oneAPI Unified Runtime over Level-Zero', type='gpu', driver_version='1.3.27642', total_memory=65536MB, max_compute_units=512, gpu_eu_count=512, gpu_subslice_count=64, max_work_group_size=1024, max_num_sub_groups=64, sub_group_sizes=[16 32], has_fp16=1, has_fp64=1, has_atomic64=1) Device [7]: _XpuDeviceProperties(name='Intel(R) Data Center GPU Max 1550', platform_name='Intel(R) oneAPI Unified Runtime over Level-Zero', type='gpu', driver_version='1.3.27642', total_memory=65536MB, max_compute_units=512, gpu_eu_count=512, gpu_subslice_count=64, max_work_group_size=1024, max_num_sub_groups=64, sub_group_sizes=[16 32], has_fp16=1, has_fp64=1, has_atomic64=1)