Skip to content

Commit 4e4b1a1

Browse files
committed
[ET-VK][ez] Make sure vTensor is not referencing the global context
## Context Some functions in `vTensor` accidentally referenced the global context by calling `context()`; the correct thing to do is to use the context pointer associated with the `vTensor` by using `storage_.context_` instead. Differential Revision: [D71560884](https://our.internmc.facebook.com/intern/diff/D71560884/) ghstack-source-id: 273023082 Pull Request resolved: #9458
1 parent ea43453 commit 4e4b1a1

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

backends/vulkan/runtime/api/containers/Tensor.cpp

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -674,7 +674,8 @@ utils::GPUMemoryLayout vTensor::estimate_memory_layout() const {
674674
}
675675

676676
const vkapi::BufferBindInfo vTensor::sizes_ubo() {
677-
const size_t size_per_ubo = context()->adapter_ptr()->min_ubo_alignment();
677+
const size_t size_per_ubo =
678+
storage_.context_->adapter_ptr()->min_ubo_alignment();
678679
const size_t max_ubo_size = kMaxMetadataFieldCount * size_per_ubo;
679680
if (!uniforms_.buffer()) {
680681
uniforms_ = ParamsBuffer(storage_.context_, max_ubo_size, true);
@@ -692,7 +693,8 @@ const vkapi::BufferBindInfo vTensor::sizes_ubo() {
692693
}
693694

694695
const vkapi::BufferBindInfo vTensor::strides_ubo() {
695-
const size_t size_per_ubo = context()->adapter_ptr()->min_ubo_alignment();
696+
const size_t size_per_ubo =
697+
storage_.context_->adapter_ptr()->min_ubo_alignment();
696698
const size_t max_ubo_size = kMaxMetadataFieldCount * size_per_ubo;
697699
if (!uniforms_.buffer()) {
698700
uniforms_ = ParamsBuffer(storage_.context_, max_ubo_size, true);
@@ -712,7 +714,8 @@ const vkapi::BufferBindInfo vTensor::strides_ubo() {
712714
}
713715

714716
const vkapi::BufferBindInfo vTensor::logical_limits_ubo() {
715-
const size_t size_per_ubo = context()->adapter_ptr()->min_ubo_alignment();
717+
const size_t size_per_ubo =
718+
storage_.context_->adapter_ptr()->min_ubo_alignment();
716719
const size_t max_ubo_size = kMaxMetadataFieldCount * size_per_ubo;
717720
if (!uniforms_.buffer()) {
718721
uniforms_ = ParamsBuffer(storage_.context_, max_ubo_size, true);
@@ -730,7 +733,8 @@ const vkapi::BufferBindInfo vTensor::logical_limits_ubo() {
730733
}
731734

732735
const vkapi::BufferBindInfo vTensor::numel_ubo() {
733-
const size_t size_per_ubo = context()->adapter_ptr()->min_ubo_alignment();
736+
const size_t size_per_ubo =
737+
storage_.context_->adapter_ptr()->min_ubo_alignment();
734738
const size_t max_ubo_size = kMaxMetadataFieldCount * size_per_ubo;
735739
if (!uniforms_.buffer()) {
736740
uniforms_ = ParamsBuffer(storage_.context_, max_ubo_size, true);

0 commit comments

Comments
 (0)