Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
H
HPCasCode
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
hpc-team
HPCasCode
Commits
3ffddb97
Commit
3ffddb97
authored
6 years ago
by
Trung Nguyen
Browse files
Options
Downloads
Patches
Plain Diff
Add improvement to roles
Former-commit-id:
0237a52f
parent
ed581017
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
roles/gpu/tasks/main.yml.bkup
+0
-206
0 additions, 206 deletions
roles/gpu/tasks/main.yml.bkup
with
0 additions
and
206 deletions
roles/gpu/tasks/main.yml.bkup
deleted
100644 → 0
+
0
−
206
View file @
ed581017
---
- name: install deps
yum: name={{ item }} state=installed
sudo: true
with_items:
- gcc
- perl
- wget
- pciutils
- kernel-headers
- kernel-devel
- xterm
- libX11-common
- libX11-devel
- libX11
- xorg-x11-server-common
- xorg-x11-util-macros
- xorg-x11-server-utils
- xorg-x11-font-utils
- xorg-x11-server-Xorg
- xorg-x11-glamor
- xorg-x11-xinit
- xorg-x11-utils
- xorg-x11-xauth
- xorg-x11-proto-devel
- xorg-x11-xkb-utils
- name: install development tools
yum: name="@Development Tools" state=installed
become: true
become_user: root
- name: disable nouveau
template: src=blacklist-nouveau.conf.j2 dest=/etc/modprobe.d/blacklist-nouveau.conf
become: true
become_user: root
- name: template unit for for persistenced
template: src=nvidia-persistenced.service dest=/etc/systemd/system/nvidia-persistenced.service
become: true
become_user: root
- name: create the nvidia-persistenced user
user: name=nvidia-persistenced state=present system=yes shell=/bin/false
become: true
become_user: root
- name: remove nouveau
modprobe: name=nouveau state=absent
become: true
become_user: root
- name: get kernel version
shell: uname -r
register: kernel_version
check_mode: no
- name: check nvidia driver
stat: path="/lib/modules/{{ kernel_version.stdout }}/kernel/drivers/video/nvidia.ko"
register: nvidia_driver
ignore_errors: true
- name: set default driver version
set_fact:
installed_driver_version: '0.0'
- name: check nvidia driver version
shell: 'nvidia-smi | grep -Po "Driver Version: \K\S+"'
register: installed_driver_version
when: nvidia_driver.stat.exists
check_mode: no
- name: debug - installed nvidia driver version
debug:
msg: "{{ installed_driver_version }} "
- name: set install default
set_fact:
install_driver: false
- name: set uninstall default
set_fact:
uninstall_driver: false
- name: set install
set_fact:
install_driver: true
when: not nvidia_driver.stat.exists or not installed_driver_version.stdout_lines[0] == nvidia_version
- name: set uninstall
set_fact:
uninstall_driver: true
when: nvidia_driver.stat.exists and not installed_driver_version.stdout_lines[0] == nvidia_version
- name: Unload nvidia driver
shell: rmmod nvidia_uvm nvidia_drm nvidia_modeset nvidia || true
sudo: true
when: install_driver
- name: stop the persistence daemon
service: name=nvidia-persistenced state=stopped
become: true
become_user: root
when: uninstall_driver
- name: kill any X processes
shell: ps ax | grep "X :0" | grep -v grep | cut -f 1 -d " " | xargs -I{} kill -9 {}
become: true
become_user: root
when: uninstall_driver
- name: get old nvidia driver
get_url: url=http://consistency0/src/NVIDIA-Linux-x86_64-{{ installed_driver_version.stdout_lines[0] }}.run dest=/tmp/NVIDIA-Linux-x86_64-{{ installed_driver_version.stdout_lines[0] }}.run
become: true
become_user: root
when: uninstall_driver
ignore_errors: true
- name: uninstall old nvidia driver
shell: chmod 755 /tmp/NVIDIA-Linux-x86_64-{{ installed_driver_version.stdout_lines[0] }}.run; /tmp/NVIDIA-Linux-x86_64-{{ installed_driver_version.stdout_lines[0] }}.run --uninstall --silent
become: true
become_user: root
when: uninstall_driver
- name: clean up old driver installation file
file:
state: absent
path: /tmp/NVIDIA-Linux-x86_64-{{ installed_driver_version.stdout_lines[0] }}.run
become: true
become_user: root
ignore_errors: true
- name: get nvidia driver
get_url: url=http://consistency0/src/NVIDIA-Linux-x86_64-{{ nvidia_version }}.run dest=/tmp/NVIDIA-Linux-x86_64-{{ nvidia_version }}.run
become: true
become_user: root
when: install_driver
#- name: Copy boot file
# template: src=grub.conf.j2 dest=/boot/grub/grub.conf
# sudo: true
#
#- name: Copy X config file
# template: src=xorg.conf.j2 dest=/etc/X11/xorg.conf
# sudo: true
- name: Copy xserver file
template: src=xserver.j2 dest=/etc/pam.d/xserver
become: true
become_user: root
- name: build nvidia driver
shell: chmod 755 /tmp/NVIDIA-Linux-x86_64-{{ nvidia_version }}.run; /tmp/NVIDIA-Linux-x86_64-{{ nvidia_version }}.run --silent
become: true
become_user: root
when: install_driver
- name: set the GOM
shell: nvidia-smi --gom=0
become: true
become_user: root
- name: enable persistenced on boot
service: name=nvidia-persistenced state=started enabled=yes
become: true
become_user: root
- name: Configure xorg.conf with nvidia-xconfig so xorg.conf matches gpu number
shell: /usr/bin/nvidia-xconfig -a --use-display-device=none --preserve-busid
become: true
become_user: root
args:
creates: /etc/X11/xorg.conf
#- name: Template xorg.conf for nodes with one GPU
# template: src=xorg.conf.j2 dest=/etc/X11/xorg.conf
# become: true
# become_user: root
# when: template_xorgconf is defined and template_xorgcon
- name: run nvidia-xconf-gen
script: scripts/nvidia-xconf-gen.py
register: nvidiacards
check_mode: no
- name: set env for nvidia_card_lists
set_fact:
nvidiacardslist: "{{ nvidiacards.stdout | from_json }}"
- name: generate nvidia-xorg-conf
sudo: true
template:
src: xorg.conf.j2
dest: "{{ item['filename'] }}"
with_items: "{{ nvidiacardslist }}"
- name: clean up nvidia driver installation file
file:
state: absent
path: /tmp/NVIDIA-Linux-x86_64-{{ nvidia_version }}.run
become: true
become_user: root
ignore_errors: true
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment