From 03e2e6fda4d781eae9229d8d84977b7532730bd2 Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Tue, 19 May 2020 12:28:29 +0200 Subject: [PATCH] Rename size attribute of StreamModuleFrame --- core-buffer/include/jungfrau.hpp | 2 +- core-buffer/src/WriterZmqReceiver.cpp | 4 +- core-buffer/test/test_WriterZmqReceiver.cpp | 2 +- sf-buffer/src/sf_replay.cpp | 46 +++++++++++---------- 4 files changed, 28 insertions(+), 26 deletions(-) diff --git a/core-buffer/include/jungfrau.hpp b/core-buffer/include/jungfrau.hpp index a98369e..d14821f 100644 --- a/core-buffer/include/jungfrau.hpp +++ b/core-buffer/include/jungfrau.hpp @@ -52,7 +52,7 @@ struct ModuleFrame { #pragma pack(1) struct StreamModuleFrame { ModuleFrame metadata; - uint64_t frame_size; + uint64_t data_n_bytes; bool is_frame_present; }; #pragma pack(pop) diff --git a/core-buffer/src/WriterZmqReceiver.cpp b/core-buffer/src/WriterZmqReceiver.cpp index 1c2a665..689ea02 100644 --- a/core-buffer/src/WriterZmqReceiver.cpp +++ b/core-buffer/src/WriterZmqReceiver.cpp @@ -131,10 +131,10 @@ void WriterZmqReceiver::get_next_image( auto n_bytes_image = zmq_recv( sockets_[i_module], (image_buffer + image_buffer_offset), - frame_metadata.frame_size, + frame_metadata.data_n_bytes, 0); - if (n_bytes_image != frame_metadata.frame_size) { + if (n_bytes_image != frame_metadata.data_n_bytes) { throw runtime_error("Wrong number of data bytes."); } diff --git a/core-buffer/test/test_WriterZmqReceiver.cpp b/core-buffer/test/test_WriterZmqReceiver.cpp index 7b4b07f..19290e7 100644 --- a/core-buffer/test/test_WriterZmqReceiver.cpp +++ b/core-buffer/test/test_WriterZmqReceiver.cpp @@ -51,7 +51,7 @@ TEST(WriterZmqReceiver, basic_test) frame_metadata.metadata.daq_rec = 4; frame_metadata.is_frame_present = 1; - frame_metadata.frame_size = compressed_frame_size; + frame_metadata.data_n_bytes = compressed_frame_size; zmq_send(sockets[i], &frame_metadata, diff --git a/sf-buffer/src/sf_replay.cpp b/sf-buffer/src/sf_replay.cpp index 5cd591e..d8cf70b 100644 --- a/sf-buffer/src/sf_replay.cpp +++ b/sf-buffer/src/sf_replay.cpp @@ -23,9 +23,9 @@ void sf_replay ( StreamModuleFrame metadata_buffer; auto frame_buffer = make_unique(MODULE_N_PIXELS); - auto compressed_buffer_size = bshuf_compress_lz4_bound( - MODULE_N_PIXELS, PIXEL_N_BYTES, MODULE_N_PIXELS); - auto compressed_buffer = make_unique(compressed_buffer_size); +// auto compressed_buffer_size = bshuf_compress_lz4_bound( +// MODULE_N_PIXELS, PIXEL_N_BYTES, MODULE_N_PIXELS); +// auto compressed_buffer = make_unique(compressed_buffer_size); ReplayH5Reader file_reader(device, channel_name); @@ -55,25 +55,27 @@ void sf_replay ( &(metadata_buffer.metadata), (char*)(frame_buffer.get())); + metadata_buffer.data_n_bytes = MODULE_N_BYTES; + auto end_time = chrono::steady_clock::now(); auto read_us_duration = chrono::duration_cast( end_time-start_time).count(); - start_time = chrono::steady_clock::now(); - - auto compressed_size = bshuf_compress_lz4( - frame_buffer.get(), compressed_buffer.get(), - MODULE_N_PIXELS, PIXEL_N_BYTES, MODULE_N_PIXELS); - - if (compressed_size < 0) { - throw runtime_error("Error while compressing buffer."); - } - - metadata_buffer.frame_size = compressed_size; - - end_time = chrono::steady_clock::now(); - auto compress_us_duration = chrono::duration_cast( - end_time-start_time).count(); +// start_time = chrono::steady_clock::now(); +// +// auto compressed_size = bshuf_compress_lz4( +// frame_buffer.get(), compressed_buffer.get(), +// MODULE_N_PIXELS, PIXEL_N_BYTES, MODULE_N_PIXELS); +// +// if (compressed_size < 0) { +// throw runtime_error("Error while compressing buffer."); +// } +// +// metadata_buffer.frame_data_n_bytes = compressed_size; +// +// end_time = chrono::steady_clock::now(); +// auto compress_us_duration = chrono::duration_cast( +// end_time-start_time).count(); start_time = chrono::steady_clock::now(); @@ -83,7 +85,7 @@ void sf_replay ( ZMQ_SNDMORE); zmq_send(socket, (char*)(frame_buffer.get()), - compressed_size, + metadata_buffer.data_n_bytes, 0); end_time = chrono::steady_clock::now(); @@ -95,13 +97,13 @@ void sf_replay ( total_read_us += read_us_duration; max_read_us = max(max_read_us, (uint64_t)read_us_duration); - total_compress_us += compress_us_duration; - max_compress_us = max(max_compress_us, (uint64_t)compress_us_duration); +// total_compress_us += compress_us_duration; +// max_compress_us = max(max_compress_us, (uint64_t)compress_us_duration); total_send_us += send_us_duration; max_send_us = max(max_send_us, (uint64_t)send_us_duration); - total_compressed_size += compressed_size; + total_compressed_size += metadata_buffer.data_n_bytes; total_original_size += MODULE_N_BYTES + sizeof(StreamModuleFrame); if (stats_counter == STATS_MODULO) {