Я исхожу из того, что ownership у кого-то кто этот массив выделял.
создание cpu и gpu ресурсов независимо происходит. Овнершип изначально у того, кто этот массив выделял. Есть промежуточная структура данных, которая скармливается API и в которой содержатся данные для создания GPU ресурсов. Частью этих данных является std::vector<uint8_t> в котором содержатся байты текстуры.