关于为Inferentia编译模型的一些问题。

0

【以下的问题经过翻译处理】 当我阅读文档但无法找到答案时,我产生了以下问题。

  1. 编译是否必须在CPU上完成?我可以使用加速器如GPU来加速编译吗?

  2. 在Inf1实例上编译是否利用神经元核心,还是像其他实例一样只使用CPU?

  3. 看起来有几种方法可以利用多个神经核心进行推理,我找到:

    • torch.neuron.DataParallel
    • 在编译之前设置os.environ ['NEURON_RT_NUM_CORES']
    • 使用--neuroncore-pipeline-cores进行跟踪函数设置。是否有任何差异?
profile picture
EXPERTE
gefragt vor 5 Monaten19 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 我假设您正在编译一个基于Inf1实例的模型。如果是这样,以下是对您的问题的一些答案:

  1. 编译必须在CPU上完成吗?我可以使用像GPU这样的加速器来加快速度吗? [A] 是的,编译发生在CPU上,不能使用GPU加速。
  2. 在Inf1实例上编译会利用神经元核心,还是和其他实例一样使用CPU? [A] 编译使用CPU资源,您可以使用单独的实例(例如C5、C6或z1d实例类型)以获得最快的编译时间。
  3. 使用多个神经核心进行推断似乎有几种方法。 [A] 每个3个选项都使用多个神经元核心,但用于不同的情况。
  • torch.neuron.DataParallel通过将单个神经元模型复制到所有可用的NeuronCores上,以模块级别实现数据并行,在不同的内核上分配数据进行并行推断。它包括Dynamic batching等功能,允许您使用神经元模型最初未编译的张量批量大小。这是必要的,因为底层Inferentia硬件将始终使用编译期间使用的批量大小执行推断。更多详细信息可以在此处找到 链接
  • *NEURON_RT_NUM_CORES是运行时环境变量,告诉神经元运行时自动保留指定的免费NeuronCores数量,用于特定进程。如果您有多个进程尝试访问实例上的神经元核心
profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen