Как удалить cuda nvidia mac os

Обновлено: 06.07.2024

CUDA всем хороша, пока под рукой есть видеокарта от Nvidia. Но что делать, когда на любимом ноутбуке нет Nvidia видеокарты? Или нужно вести разработку в виртуальной машине?

Я постараюсь рассмотреть в этой статье такое решение, как фреймворк rCUDA (Remote CUDA), который поможет, когда Nvidia видеокарта есть, но установлена не в той машине, на которой предполагается запуск CUDA приложений. Тем, кому это интересно, добро пожаловать под кат.

rCUDA (Remote CUDA) — фреймворк, реализующий CUDA API, позволяющий использовать удалённую видеокарту. Находится в работоспособной бета-версии, доступен только под Linux. Основная цель rCUDA — полная совместимость с CUDA API, вам не нужно никак модифицировать свой код, достаточно задать специальные переменные среды.

Что такое rCUDA

rCUDA (Remote CUDA) — фреймворк, реализующий CUDA API, позволяющий использовать для CUDA вычислений видеокарту, расположенную на удалённой машине, не внося никаких изменений в ваш код. Разработан в политехническом университете Валенсии (rcuda-team).

Ограничения

На данный момент поддерживаются только GNU/Linux системы, однако разработчики обещают поддержку Windows в будущем. Текущая версия rCUDA, 18.03beta, совместима с CUDA 5-8, то есть CUDA 9 не поддерживается. Разработчиками заявлена полная совместимость с CUDA API, за исключением графики.

Возможные сценарии использования

  1. Запуск CUDA приложений в виртуальной машине тогда, когда проброс видеокарты неудобен или невозможен, например, когда видеокарта занята хостом, или когда виртуальных машин больше одной.
  2. Ноутбук без дискретной видеокарты.
  3. Желание использовать несколько видеокарт (кластеризация). Теоретически, можно использовать все имеющиеся в команде видеокарты, в том числе совместо.

Краткая инструкция

Тестовая конфигурация

Тестирование проводилось на следующей конфигурации:

Сервер:
Ubuntu 16.04, GeForce GTX 660

Клиент:
Виртуальная машина с Ubuntu 16.04 на ноутбуке без дискретной видеокарты.

Получение rCUDA

Cамый сложный этап. К сожалению, на данный момент единственный способ получить свой экземпляр этого фреймворка — заполнить соответствующую форму запроса на официальном сайте. Впрочем, разработчики обещают отвечать в течение 1-2 дней. В моём случае мне прислали дистрибутив в тот же день.

Установка CUDA

Важно! На клиенте следует отказаться от установки nvidia драйвера. По умолчанию CUDA Toolkit будет доступен по адресу /usr/local/cuda/. Установите CUDA Samples, они понадобятся.

Установка rCUDA

Распакуем полученный от разработчиков архив в нашу домашнюю директорию на сервере и на клиенте.

Проделать эти действия нужно как на сервере, так и на клиенте.

Запуск демона rCUDA на сервере

Замените < XXX> на имя вашего пользователя. Используйте ./rCUDAd -iv, если хотите видеть подробный вывод.

Настройка клиента

Откроем на клиенте терминал, в котором в дальнейшем будем запускать CUDA код. На стороне клиента нам необходимо "подменить" стандартные библиотеки CUDA на библиотеки rCUDA, для чего добавим соответствующие пути в переменную среды LD_LIBRARY_PATH. Также нам необходимо указать количество серверов и их адреса (в моём примере он будет один).

Сборка и запуск

Попробуем собрать и запустить несколько примеров.

Пример 1

Начнём с простого, с deviceQuery — примера, который просто выведет нам параметры CUDA совместимого устройства, то есть в нашем случае удалённого GTX660.

Важно! Без EXTRA_NVCCFLAGS=--cudart=shared чуда не получится
Замените <YYY> на путь, который вы указали для CUDA Samples при установке CUDA.

Запустим собранный пример:

Если вы всё сделали правильно, результат будет примерно таким:

Самое главное, что мы должны увидеть:

Отлично! Нам удалось собрать и запустить CUDA приложение на машине без дискретной видеокарты, использовав для этого видеокарту, установленную на удалённом сервере.

Важно! Если вывод приложения начинается со строк вида:

значит необходимо добавить на сервере и на клиенте в файл "/etc/security/limits.conf" следующие строки:

Таким образом, вы разрешите всем пользователям (*) неограниченное (unlimited) блокирование памяти (memlock). Еще лучше будет заменить * на нужного пользователя, а вместо unlimited подобрать менее жирные права.

Пример 2

Теперь попробуем что-то поинтереснее. Протестируем реализацию скалярного произведения векторов с использованием разделяемой памяти и синхронизации ("Технология CUDA в примерах" Сандерс Дж. Кэндрот Э. 5.3.1).

В данном примере мы рассчитаем скалярное произведение двух векторов размерностью 33 * 1024, сравнивая ответ с результатом, полученным на CPU.

Сборка и запуск:

Такой результат говорит нам, что всё у нас хорошо:

Пример 3

Запустим еще один стандартный тест CUDA- matrixMulCUBLAS (перемножение матриц).

[Matrix Multiply CUBLAS] — Starting…
GPU Device 0: "GeForce GTX 660" with compute capability 3.0

MatrixA(640,480), MatrixB(480,320), MatrixC(640,320)
Computing result using CUBLAS. done.
Performance= 436.24 GFlop/s, Time= 0.451 msec, Size= 196608000 Ops
Computing result using host CPU. done.
Comparing CUBLAS Matrix Multiply with CPU results: PASS

NOTE: The CUDA Samples are not meant for performance measurements. Results may vary when GPU Boost is enabled.

Performance= 436.24 GFlop/s,
Comparing CUBLAS Matrix Multiply with CPU results: PASS

Безопасность

Я не нашёл в документации к rCUDA упоминания о каком-либо способе авторизации. Думаю, на данный момент самое простое, что можно сделать, это открыть доступ к нужному порту (8308) только с определённого адреса.

месяц назад я установил cuda 5.5 на Ubuntu 14.04 (которая не поддерживается для этой версии версии Ubuntu), и у меня это не получалось.

Я хочу удалить то, что я установил ранее, и установить новый набор инструментов cuda 6.5,

Итак, после ввода этого в терминале: dpkg -l | grep -i nvidia

Я получаю следующее:

Я хотел бы удалить только то, что необходимо для установки новейшего набора инструментов cuda. Pacakages, как шмель, я хочу остаться, как они.

Какие пакеты я должен удалить, а какие нет, чтобы это сделать?

Этот метод даст полное удаление Cuda:

просто

удалить файлы CUDA в /usr/local/cuda-5.0

продвинутый

Удалите просто nvidia-cuda-toolkit

sudo apt-get remove nvidia-cuda-toolkit

Удалите nvidia-cuda-toolkit и его зависимости

sudo apt-get remove --auto-remove nvidia-cuda-toolkit

Очистка конфигурации / данных

sudo apt-get purge nvidia-cuda-toolkit или sudo apt-get purge --auto-remove nvidia-cuda-toolkit

Кроме того, удаление /opt/cuda и

/NVIDIA_GPU_Computing_SDK папки , если они присутствуют. и удалите export PATH=$PATH:/opt/cuda/bin и export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/cuda/lib:/opt/cuda/lib64 строки

Это не удаляет файлы для меня. На самом деле, кажется, что обычное удаление не очищает оставшиеся модули ядра… @marbel, можешь объяснить, почему мы не должны использовать apt-get? Вы можете найти ответы на некоторые вопросы на форумах nvidia. «Решения» меняются так часто, что трудно найти что-то надежное. Для меня решением было переустановить ОС, и я нашел этот совет на форумах nvidia.

недавно я хотел удалить Cuda из моего Ubuntu, я нашел готовый файл для этого !! (Я думаю, этот метод является стандартным)

Прежде всего измените каталог на путь cuda, который по умолчанию /usr/local/cuda-9.0/bin , вы можете изменить каталог с помощью следующей команды:

в каталоге есть файл, который называется uninstall_cuda_9.0.pl (пожалуйста, обратите внимание, что моя версия cuda 9.0 ), поэтому вам просто нужно запустить, uninstall_cuda_9.0.pl чтобы полностью удалить cuda из вашей системы !!

После ввода пароля файлы cuda будут стираться. (это может занять несколько минут)

ПРИМЕЧАНИЕ: Как узнать, какая cuda установлена ​​на моем Ubuntu? Вы можете проверить с помощью nvcc команды, как вы можете видеть в последней строке приведенного ниже результата, наша версия cuda 9.0

Результат этой команды будет выглядеть следующим образом:

для меня этот sudo ./uninstall_cuda_9.0.pl файл не существует, что делать?

Это может ясно очистить инструментарий CUDA. Вы можете проверить, что папка /usr/local/cuda исчезла. И эта команда - лучший выбор для удаления установленного приложения.

Но когда вы переустанавливаете другую версию cuda, вы должны использовать:

номер версии должен быть включен. Я пытался установить другую версию CUDA после удаления предыдущей версии, я обнаружил, что sudo apt-get install cuda все еще будет устанавливать предыдущую.

Примечание. Эта статья является веткой блога по настройке учебника по среде tenorflow. Чтобы основной блог не был слишком длинным и чтобы шаги не были достаточно подробными, см.Win10 устанавливает Anaconda3, TensorFlow, Keras

Каталог статей

  1. Адрес загрузки установочного пакета (в основном блоге он также упоминался при представлении выбора версии)
    Адреса загрузки CUDA различных версий на официальном сайте
    Различные адреса загрузки cuDNN на официальном сайте
  2. Откройте «cuda_8.0.44_win10.exe», этот процесс будет очень медленным, подождите терпеливо (это также побуждает меня сменить компьютер)

    Выберите адрес декомпрессии (в любом случае он временный, просто диск C, это не большая проблема)

    начать распаковку (этот процесс все еще очень медленный, особенно когда я не знаю, что пошло не так с моим компьютером за это время, использование ЦП и памяти слишком велико, этот процесс также занял у меня много времени)
    После распаковки добавьте его в установщик
  3. начать установку
    4. Стучите по доске! Не выбирайте здесь упрощение по умолчанию. Упрощение здесь следует изменить на все (см. Мелкий шрифт ниже, это семейная корзина). Это не означает, что установка семейной корзины невозможна. Основная причина в том, что установка одного элемента всегда вызывает установка не удалась
    Особенно нельзя выбирать эту интеграцию с визуальной студией!

    Достаточно выбрать следующую установку

    Просто установите его на диск C, и вам будет удобнее искать путь в других местах.
  4. Успешная установка

  5. Убедитесь, что установка прошла успешно
    (1) Переменные среды должны были добавляться автоматически

    (2) Просмотр информации о версии в cmd nvcc -V
    (3) После ввода пути проверьте интерфейс мониторинга среды выполнения графического процессора.
    (4) Запустите bandwidthTest.exe (сначала вам нужно войти в каталог)

    (5) Запустите deviceQuery.exe (сначала вам нужно войти в каталог)


Различные адреса загрузки cuDNN на официальном сайте
Нельзя сказать, что cuDNN установлен, просто разархивируйте загруженный сжатый пакет и поместите файлы из соответствующей папки в соответствующую папку по пути установки CUDA.


cuDNN просто копирует файлы в каталог установки CUDA, поэтому вы можете удалить его (вы можете удалить всю папку сразу после удаления CUDA)
Удаление CUDA: программа удаления из панели управления (не используйте антивирусное ПО, такое как 360, вы не можете найти соответствующую программу), отсортированные по времени установки, верхние с номерами версий, Это CUDA, которая была установлена ​​только что, и вы можете удалить их одну за другой.


Новую версию платформы параллельных вычислений CUDA нельзя будет установить на macOS. Nvidia приняла решение, которое в перспективе может повлиять на качество работы программ с тяжелой графикой и сложными вычислениями на компьютерах Apple.

Что такое CUDA

CUDA – платформа параллельных вычислений, разработанная Nvidia. Позволяет центральному и графическому процессору совместно обрабатывать данные. CUDA увеличивает производительность вычислений, поэтому платформу используют для майнинга криптовалюты.

CUDA включает программную и аппаратную составляющие. Аппаратную часть реализовали в графических процессорах Nvidia GeForce, ION, Quadro и Tesla. Программная часть – набор расширений для языков C и С++. Кроме того, разработчики могут использовать открытые стандарты вроде OpenACC для работы с CUDA.

Платформу задействуют не только в создании компьютерной графики, обработке видео и других изображений. CUDA широко применяется учеными для сложных вычислений в химии и биологии, для моделирования динамики жидкостей, анализа сейсмических данных. Ускорение программы для моделирования молекулярной динамики AMBER с CUDA позволило сократить сроки создания лекарств. В последнее время CUDA использовали для обработки изображений компьютерной томографии.

Финансовые компании Numerix и CompatibL используют платформу для оценки рисков контрагентов, вычисления ускорились в 18 раз. По всему миру в компаниях из списка Fortune 500 уже работает более 700 GPU-кластеров CUDA.

Кто столкнется с проблемами

У приложений для работы с графикой на MacOS не останется преимуществ: новые технологии параллельных вычислений на них применяться не будут. Специалисты по видеомонтажу часто применяли CUDA для рендеринга в Adobe Premiere и After Effects. В будущем на macOS они не смогут полноценно это сделать. Конечно, CUDA 10.2 и версии, выпущенные ранее, по-прежнему будут доступны, но для использования новых возможностей придется перейти на Windows.

Пострадают и ученые, которые работают с macOS. Сейчас значительная часть экспериментов ставится не в лабораториях, а на компьютерах. Вполне вероятно, что исследовательские центры придется переоснащать, только чтобы иметь доступ к ускорителю параллельных вычислений.

Под ударом окажутся не только специалисты, но и рядовые пользователи. Например, игры вроде Just Cause 2 широко использовали CUDA для улучшения графики. Новые версии игр могут работать на компьютерах Apple хуже, чем на ПК с Windows. Пострадают и фанаты Hackintosh – неофициальных сборок macOS для установки не на компьютеры Apple. Специалисты в этой области заявили, что устанавливать macOS на ПК станет гораздо сложнее. Энтузиастам придется самостоятельно изобретать решения, которые бы обеспечили поддержку Nvidia на устройствах.

История конфликта

В 2008 году Apple представила MacBook Pro с видеокартами Nvidia. Устройства оказались провальными: это признал сам производитель и открыл расширенную программу поддержки.

Проблема заключалась в работе новых графических чипов G84 и G86. Комплектующие часто оказывались бракованными и работали нестабильно: изображение могло быть дефектным или вовсе отсутствовать. В MacBook Pro были установлены графические карты GeForce 8600M GT на базе G84. Apple пообещала бесплатную замену видеокарт и компенсацию расходов тем пользователям, которые обращались в сервисные центры с проблемой ранее.

Ситуация послужила для Apple уроком. Компания перешла на графические карты AMD и больше не использовала видеоадаптеры Nvidia в MacBook. Но при этом разработчики Apple поддерживали CUDA. А Nvidia, в свою очередь, выпускала драйвера для видеокарт под macOS. В 2018 году ситуация изменилась. Apple представила macOS Mojave и заявила, что прекращает поддержку CUDA в своей ОС. Спустя год Nvidia ответила тем же.

Да и у AMD есть своя альтернатива - Open CI - правда пока она по охвату рынка очень сильно отстаёт от CUDA - но если бы у пользователей Эппла был бы большой спрос на вычисления "на видеокартах" - то, думаю, это бы уже подтянули - ну может теперь подтянут, когда других альтернатив не будет. И nVIDIA потеряет небольшой кусочек пирога.

Но вообще, странный конфликт. Друг другу палки в колёса понавтыкали. И "радуются". Приём ссора то, тривиальная - и можно было легко помириться. Вот она - гордыня руководства Эппл.

Читайте также: