ncnn的blob_vkallocator、workspace_vkallocator、staging_vkallocator區別
ncnn::Extractor中有三個成員函數:
void set_blob_vkallocator(VkAllocator* allocator); void set_workspace_vkallocator(VkAllocator* allocator); void set_staging_vkallocator(VkAllocator* allocator);
blob_vkallocator是一個用于blob數據的分配器,它可以為一些長期存儲或常用的數據分配內存。它通常用于一些需要持久保存或重復使用的場景,例如模型的權重或輸入輸出的數據。
staging_vkallocator是一個用于臨時數據傳輸的分配器,它可以快速地分配和釋放內存,但是不保證內存的持久性。通常用于將CPU上的數據復制到GPU上,或者將GPU上的數據讀回到CPU上。
workspace_vkallocator是一個用于工作空間的分配器,它可以為一些中間計算結果或臨時變量分配內存。它通常用于一些需要多次計算或迭代的場景,例如神經網絡的推理。

浙公網安備 33010602011771號