@@ -219,8 +219,8 @@ class RandomKVFile : public nv::merlin::BaseKVFile<K, V, S> {
219
219
size_t key_read_byte = n * sizeof (K);
220
220
size_t value_read_byte = n * sizeof (V) * dim;
221
221
222
- key_buffer_.resize (key_read_byte);
223
- value_buffer_.resize (value_read_byte);
222
+ key_buffer_.reserve (key_read_byte);
223
+ value_buffer_.reserve (value_read_byte);
224
224
225
225
key_reader_->ReadNBytes (key_read_byte, &key_buffer_);
226
226
value_reader_->ReadNBytes (value_read_byte, &value_buffer_);
@@ -236,16 +236,9 @@ class RandomKVFile : public nv::merlin::BaseKVFile<K, V, S> {
236
236
const V* vectors, const S* scores) override {
237
237
size_t key_write_byte = n * sizeof (K);
238
238
size_t value_write_byte = n * sizeof (V) * value_dim_;
239
- std::vector<char > key_buffer_vector (key_buffer_byte_size_);
240
- char * key_buffer = key_buffer_vector.data ();
241
- std::vector<char > value_buffer_vector (value_buffer_byte_size_);
242
- char * value_buffer = value_buffer_vector.data ();
243
239
244
- memcpy (key_buffer, (void *)keys, key_write_byte);
245
- memcpy (value_buffer, (void *)vectors, value_write_byte);
246
-
247
- key_writer_->Append (StringPiece (key_buffer, key_write_byte));
248
- value_writer_->Append (StringPiece (value_buffer, value_write_byte));
240
+ key_writer_->Append (StringPiece ((char *)keys, key_write_byte));
241
+ value_writer_->Append (StringPiece ((char *)vectors, value_write_byte));
249
242
250
243
return n;
251
244
}
0 commit comments