Несколько экземпляров tensorflow lite с делегатом NNAPI

#tensorflow #tensorflow-lite #nnapi

#tensorflow #tensorflow-lite #nnapi

Вопрос:

Делегат NNAPI в Tensorflow lite использует общую память для ввода и вывода тензоров графа. Однако имя пула общей памяти жестко задано ( "input_pool" и "otput_pool" ):

   // Create shared memory pool for inputs and outputs.
  nn_input_memory_.reset(
      new NNMemory(nnapi_, "input_pool", total_input_byte_size));
  nn_output_memory_.reset(
      new NNMemory(nnapi_, "output_pool", total_output_byte_size));
 

Теперь, что произойдет, если будут выполнены несколько экземпляров tensorflow lite с делегатом NNAPI? Насколько я понимаю, все они будут отображать и использовать один и тот же общий пул памяти. Разве это не приводит к состоянию гонки?

Ответ №1:

Имя, присвоенное общему имени, используется просто как метка. Использование одного и того же имени при создании двух разных областей общей памяти не приведет к использованию одной и той же памяти. См., например, случай, когда имя не указано, и все области создаются с именем «none»