Wolfram Computation Meets Knowledge

Как использовать удаленные ядра на машинах macOS и Linux?

Справочная информация

Распараллеливание в Mathematica использует модель “ступица-и-спицы”, в которой контролирующее ядро управляет несколькими подчиненными ядрами (subkernels). Удаленные компьютеры, на которых установлена Mathematica, могут предоставлять дополнительные подъядра, помимо локальных подъядер.

Удаленный компьютер, предоставляющий подъядра, считается хостом, а компьютер, на котором запущено управляющее ядро, считается клиентом. Если на хост-компьютере установлена операционная система Linux или macOS, Mathematica может использовать SSH для подключения к удаленным ядрам Wolfram.

Настройка

  1. Настройте пары закрытых/открытых ключей без пароля между хостом и клиентскими компьютерами. При необходимости обратитесь за помощью к вашему местному системному администратору.
  2. Запустите Mathematica на клиентском компьютере и откройте новый блокнот.
  3. В блокноте укажите ядро SSH на удаленной машине с помощью KernelConfiguration:

    kernel = KernelConfiguration["ssh://remote-host-name", "KernelCommand" -> "full path to kernel"]

    Например, чтобы указать ядро SSH на удаленной машине macOS с установленной по умолчанию системой Mathematica:

    In[1]:= kernelConfigMacOS = KernelConfiguration["ssh://myRemoteMac",
    "KernelCommand" -> "/Applications/Mathematica.app/Contents/MacOS/WolframKernel"]

    Установка Mathematica по умолчанию на удаленной машине Linux:

    In[1]:= kernelConfigLinux = KernelConfiguration["ssh://myRemoteLinux",
    "KernelCommand" -> "/usr/local/Wolfram/Mathematica/13.1/SystemFiles/Kernel/Binaries/Linux-x86-64/WolframKernel"]

  4. Запустите удаленные ядра с помощью LaunchKernels[] и используйте любую параллельную функциональность для выполнения параллельных вычислений.

    Например, использовать четыре ядра, запущенные на удаленной машине macOS, для параллельных вычислений:

    In[2]:= kernelsOnMacOS = LaunchKernels[kernelConfigMacOS, 4];
    
    ParallelEvaluate[{$KernelID,$MachineName,$Version}, kernelsOnMacOS]
    
    Out[3]= {{9, myRemoteMac, 13.1.0 for Mac OS X ARM (64-bit) (June 16, 2022)},
    {10, myRemoteMac, 13.1.0 for Mac OS X ARM (64-bit) (June 16, 2022)},
    {11, myRemoteMac, 13.1.0 for Mac OS X ARM (64-bit) (June 16, 2022)},
    {12, myRemoteMac, 13.1.0 for Mac OS X ARM (64-bit) (June 16, 2022)}}

    Используйте четыре ядра, запущенные на удаленной машине Linux, для параллельных вычислений:

    In[2]:= kernelsOnLinux = LaunchKernels[kernelConfigLinux, 4];
    
    ParallelEvaluate[{$KernelID,$MachineName,$Version}, kernelsOnLinux]
    
    Out[3]= {{17, myRemoteLinux, 13.1.0 for Linux x86 (64-bit) (June 16, 2022)},
    {18, myRemoteLinux, 13.1.0 for Linux x86 (64-bit) (June 16, 2022)},
    {19, myRemoteLinux, 13.1.0 for Linux x86 (64-bit) (June 16, 2022)},
    {20, myRemoteLinux, 13.1.0 for Linux x86 (64-bit) (June 16, 2022)}}

[English]

Была ли эта статья для вас полезной?
Да
Нет

Хотите оставить комментарий?

Спасибо за ваш отзыв.

Отправить

Обратиться в службу поддержки

Если у вас есть вопросы о ценах и оплате, активации или сомнения по техническим темам, мы готовы вам помочь.

1-800-WOLFRAM (+1-217-398-0700 для международных звонков)

Служба поддержки

Понедельник-пятница
с 08:00 до 17:00 по центральному времени США

  • Регистрация или активация продукта
  • Предпродажная информация и заказ
  • Помощь в установке и первом запуске

Расширенная техническая поддержка (для правомочных клиентов)

Понедельник-четверг
с 08:00 до 19:00 по центральному времени США

Пятница
с 08:30 до 10:00 и с 11:00 до 17:00 по центральному времени США

  • Приоритетная техническая поддержка
  • Поддержка по продуктам от экспертов Wolfram
  • Помощь специалистов по программированию на Wolfram Language
  • Расширенная поддержка установки