| 380 | } |
| 381 | |
| 382 | static Tensor::DimensionType _convert(MNN_DATA_FORMAT format) { |
| 383 | switch (format) { |
| 384 | case MNN_DATA_FORMAT_NCHW: |
| 385 | return Tensor::CAFFE; |
| 386 | case MNN_DATA_FORMAT_NC4HW4: |
| 387 | return Tensor::CAFFE_C4; |
| 388 | case MNN_DATA_FORMAT_NHWC: |
| 389 | return Tensor::TENSORFLOW; |
| 390 | default: |
| 391 | break; |
| 392 | } |
| 393 | return Tensor::CAFFE; |
| 394 | } |
| 395 | std::shared_ptr<VulkanBuffer> VulkanBackend::createHostBuffer(size_t size) const { |
| 396 | std::shared_ptr<VulkanBuffer> res; |
| 397 | res.reset(new VulkanBuffer(*mRuntime->mMemoryPool, false, size, nullptr, VK_BUFFER_USAGE_STORAGE_BUFFER_BIT | VK_BUFFER_USAGE_TRANSFER_DST_BIT | VK_BUFFER_USAGE_TRANSFER_SRC_BIT, VK_SHARING_MODE_EXCLUSIVE, VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT)); |