From c343df832eef5c31d9eff2576884a72a2ed03db9 Mon Sep 17 00:00:00 2001 From: Philipp Moritz Date: Thu, 15 Jun 2017 02:14:24 +0000 Subject: [PATCH] use multiple threads for memcpy (#669) --- src/numbuf/python/src/pynumbuf/numbuf.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/numbuf/python/src/pynumbuf/numbuf.cc b/src/numbuf/python/src/pynumbuf/numbuf.cc index f88e12097..6fd270d9b 100644 --- a/src/numbuf/python/src/pynumbuf/numbuf.cc +++ b/src/numbuf/python/src/pynumbuf/numbuf.cc @@ -178,6 +178,7 @@ static PyObject* write_to_buffer(PyObject* self, PyObject* args) { LENGTH_PREFIX_SIZE + reinterpret_cast(buffer->buf), buffer->len - LENGTH_PREFIX_SIZE); auto target = std::make_shared(buf); + target->set_memcopy_threads(8); int64_t batch_size, total_size; ARROW_CHECK_OK(write_batch_and_tensors( target.get(), object->batch, object->arrays, &batch_size, &total_size)); @@ -326,6 +327,7 @@ static PyObject* store_list(PyObject* self, PyObject* args) { auto buf = std::make_shared(LENGTH_PREFIX_SIZE + data, total_size); auto target = std::make_shared(buf); + target->set_memcopy_threads(8); write_batch_and_tensors(target.get(), batch, tensors, &data_size, &total_size); *((int64_t*)data) = data_size;