mirror of
https://github.com/kuhyx/praca_magisterska.git
synced 2026-07-04 15:43:14 +02:00
92 lines
2.8 KiB
Bash
92 lines
2.8 KiB
Bash
|
|
#!/bin/bash
|
||
|
|
# Install NVIDIA Nsight tools on Arch Linux
|
||
|
|
# This script installs Nsight Systems and Nsight Compute
|
||
|
|
|
||
|
|
set -e
|
||
|
|
|
||
|
|
echo "=== NVIDIA Nsight Installation Script for Arch Linux ==="
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# Check if running on Arch Linux
|
||
|
|
if [ ! -f /etc/arch-release ]; then
|
||
|
|
echo "Error: This script is designed for Arch Linux."
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Update system first
|
||
|
|
echo "=== Updating system packages ==="
|
||
|
|
sudo pacman -Syu --noconfirm
|
||
|
|
|
||
|
|
# Check NVIDIA drivers
|
||
|
|
echo ""
|
||
|
|
echo "=== Checking NVIDIA drivers ==="
|
||
|
|
if pacman -Qs nvidia-utils &> /dev/null; then
|
||
|
|
echo "NVIDIA utils already installed."
|
||
|
|
else
|
||
|
|
echo "Installing NVIDIA open drivers..."
|
||
|
|
sudo pacman -S --needed --noconfirm nvidia-open nvidia-utils nvidia-settings
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Install CUDA toolkit (optional but recommended)
|
||
|
|
echo ""
|
||
|
|
echo "=== Installing CUDA toolkit ==="
|
||
|
|
sudo pacman -S --needed --noconfirm cuda
|
||
|
|
|
||
|
|
# Install Nsight tools from official repositories
|
||
|
|
echo ""
|
||
|
|
echo "=== Installing NVIDIA Nsight tools ==="
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "Installing Nsight Systems (system-wide performance analysis)..."
|
||
|
|
sudo pacman -S --needed --noconfirm nsight-systems
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "Installing Nsight Compute (CUDA kernel profiling)..."
|
||
|
|
sudo pacman -S --needed --noconfirm nsight-compute
|
||
|
|
|
||
|
|
# Set up environment variables
|
||
|
|
echo ""
|
||
|
|
echo "=== Setting up environment variables ==="
|
||
|
|
CUDA_PATH="/opt/cuda"
|
||
|
|
if [ -d "$CUDA_PATH" ]; then
|
||
|
|
# Add to .bashrc if not already present
|
||
|
|
if ! grep -q "CUDA_HOME" ~/.bashrc 2>/dev/null; then
|
||
|
|
echo "" >> ~/.bashrc
|
||
|
|
echo "# NVIDIA CUDA and Nsight tools" >> ~/.bashrc
|
||
|
|
echo "export CUDA_HOME=$CUDA_PATH" >> ~/.bashrc
|
||
|
|
echo "export PATH=\$PATH:\$CUDA_HOME/bin" >> ~/.bashrc
|
||
|
|
echo "Environment variables added to ~/.bashrc"
|
||
|
|
else
|
||
|
|
echo "CUDA environment variables already configured in .bashrc"
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Add to .zshrc if zsh is used
|
||
|
|
if [ -f ~/.zshrc ]; then
|
||
|
|
if ! grep -q "CUDA_HOME" ~/.zshrc 2>/dev/null; then
|
||
|
|
echo "" >> ~/.zshrc
|
||
|
|
echo "# NVIDIA CUDA and Nsight tools" >> ~/.zshrc
|
||
|
|
echo "export CUDA_HOME=$CUDA_PATH" >> ~/.zshrc
|
||
|
|
echo "export PATH=\$PATH:\$CUDA_HOME/bin" >> ~/.zshrc
|
||
|
|
echo "Environment variables added to ~/.zshrc"
|
||
|
|
else
|
||
|
|
echo "CUDA environment variables already configured in .zshrc"
|
||
|
|
fi
|
||
|
|
fi
|
||
|
|
fi
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "=== Installation Complete ==="
|
||
|
|
echo ""
|
||
|
|
echo "Installed tools:"
|
||
|
|
echo " - Nsight Systems: Performance analysis for CPU/GPU workloads"
|
||
|
|
echo " - Nsight Compute: Detailed CUDA kernel profiling"
|
||
|
|
echo ""
|
||
|
|
echo "To launch the tools, use:"
|
||
|
|
echo " nsys-ui (Nsight Systems GUI)"
|
||
|
|
echo " nsys (Nsight Systems CLI)"
|
||
|
|
echo " ncu-ui (Nsight Compute GUI)"
|
||
|
|
echo " ncu (Nsight Compute CLI)"
|
||
|
|
echo ""
|
||
|
|
echo "Note: You may need to restart your terminal or run 'source ~/.zshrc'"
|
||
|
|
echo " to use the CUDA tools from command line."
|