diff options
Diffstat (limited to 'lib/gras_impl')
-rw-r--r-- | lib/gras_impl/input_buffer_queues.hpp | 11 | ||||
-rw-r--r-- | lib/gras_impl/stats.hpp | 6 |
2 files changed, 11 insertions, 6 deletions
diff --git a/lib/gras_impl/input_buffer_queues.hpp b/lib/gras_impl/input_buffer_queues.hpp index 6886e6e..48996ef 100644 --- a/lib/gras_impl/input_buffer_queues.hpp +++ b/lib/gras_impl/input_buffer_queues.hpp @@ -105,12 +105,6 @@ struct InputBufferQueues void push(const size_t i, const SBuffer &buffer); - GRAS_FORCE_INLINE void flush(const size_t i) - { - _queues[i].clear(); - _bitset.reset(i); - } - GRAS_FORCE_INLINE void fail(const size_t i) { _bitset.reset(i); @@ -148,6 +142,11 @@ struct InputBufferQueues _bitset.set(i, _enqueued_bytes[i] >= _reserve_bytes[i]); } + GRAS_FORCE_INLINE size_t get_items_enqueued(const size_t i) + { + return _enqueued_bytes[i]/_items_sizes[i]; + } + BitSet _bitset; std::vector<size_t> _items_sizes; std::vector<size_t> _enqueued_bytes; diff --git a/lib/gras_impl/stats.hpp b/lib/gras_impl/stats.hpp index 3f78b8d..7edab29 100644 --- a/lib/gras_impl/stats.hpp +++ b/lib/gras_impl/stats.hpp @@ -29,6 +29,7 @@ struct BlockStats time_ticks_t start_time; time_ticks_t stop_time; + //overall tracking of ports std::vector<item_index_t> items_consumed; std::vector<item_index_t> tags_consumed; std::vector<item_index_t> msgs_consumed; @@ -36,6 +37,11 @@ struct BlockStats std::vector<item_index_t> tags_produced; std::vector<item_index_t> msgs_produced; + //instantaneous port status + std::vector<size_t> items_enqueued; + std::vector<size_t> msgs_enqueued; + std::vector<size_t> tags_enqueued; + item_index_t work_count; time_ticks_t time_last_work; time_ticks_t total_time_prep; |