Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add argument for thread count to multithreaded executor #442

Merged
merged 1 commit into from
Mar 30, 2018

Conversation

matt-attack
Copy link
Contributor

Resolves #441

Copy link
Contributor

@tfoote tfoote left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm. I'll kick off CI too.

@tfoote
Copy link
Contributor

tfoote commented Feb 21, 2018

CI:
Linux: Build Status
Linux arm64: Build Status
OSX: Build Status
Windows: Build Status

@tfoote tfoote added the in review Waiting for review (Kanban column) label Feb 21, 2018
@mjcarroll
Copy link
Member

@matt-attack I think that the previous CI failures were caused on our end. Can you rebase your branch against the current master and I will resubmit the job.

@matt-attack matt-attack force-pushed the 441-make-thread-count-configurable branch from 95393cf to bdef89d Compare March 29, 2018 17:44
@matt-attack
Copy link
Contributor Author

@mjcarroll Should be rebased now

@mjcarroll
Copy link
Member

The windows rebuild looks to be successful, so LGTM: https://ci.ros2.org/job/ci_windows/4264/

@tfoote Did you have any other reason to keep this out?

@tfoote
Copy link
Contributor

tfoote commented Mar 30, 2018

nope, all set

@tfoote tfoote merged commit fa81d95 into ros2:master Mar 30, 2018
@tfoote tfoote removed the in review Waiting for review (Kanban column) label Mar 30, 2018
nnmm pushed a commit to ApexAI/rclcpp that referenced this pull request Jul 9, 2022
Fix memory leaks detected by AddressSanitizer from rcl_action unit
tests.

Signed-off-by: Prajakta Gokhale <prajaktg@amazon.com>
DensoADAS pushed a commit to DensoADAS/rclcpp that referenced this pull request Aug 5, 2022
* Init commit

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Readme and package dependencies cleaned.

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Benchmark launch file

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Dummy warmup publishers and raport gen barebone

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* added todo for system usage

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Added I/O benchmarking section 

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* config file wip

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Pc2 worker, bench and raport dirs

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* added benchmark sample config

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Moved scripts to a dir

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Simple system monitor

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Updated readme

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* added notice

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Update readme.md

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Mkdir fix

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Update readme.md

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* plotting WIP script plus an example file with logs

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Raport gen, monitor with iotop

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Disk bw fix. Instances in raport fix.

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Typo fix

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Fix in memory time axis

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Another axis fix

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* sqlite.conf for patched version of rosbag2

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Improved plotting (added message count, count start includes fractions of second, color etc)

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* data examples

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* large examples over 10000 messages

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Byte array worker, instantiation improvements

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* total captured in raport

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* voyager wip

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* workers refactored

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* launchfile refactor

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* More improvement and voyager case

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* removed some commented out lines

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Update readme.md

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* moved directories of performance packages into rosbag2_performance folder

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* commented out 1000x1000 case in voyager

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Update readme.md

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* added html template to exported files

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* First version of no-transport benchmarking
- Scalable with number of producer threads
- Uses queues to simulate message loss in callback queues. Unlike some other implementations allows to count loss messages.
- ASCII visualisation of work (better than it sounds).

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Improved parameters and added scripting to run batches. These were used to acquire first results

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Update readme.md

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Changes towards resolving WIP status
- Added copyright and license to files
- Split and updated READMEs
- Refactored writer_benchmarking, splitting classes into separate files
- added ctrl-c handling to writer_benchmarking, in script and in producers

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* lint changes

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Removed large files from repo
Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* PEP8 issues refactor, rosbag2_benchmarking package info updated.

Signed-off-by: Piotr Jaroszek <piotr.jaroszek@robotec.ai>

* fixed an issue with SQLite crash with cache>1 due to released message memory

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* uncrustify

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Introduced BUILD_PERFORMANCE flag to control the package build. Use colcon build --cmake-args -DBUILD_PERFORMANCE=1.

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* linter changes and missingcopyrights

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Update README.md

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Removed unnecessary wording

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Fixed bad spelling raport->report

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Report stats from time 0

Signed-off-by: Piotr Jaroszek <piotr.jaroszek@robotec.ai>

* minor cleaning of writer_benchmarking package

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* removed other performance packages from PR. These will be added later and reviewed separately

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* removed accidental change

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Applied review changes

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* enforced shared pointer in queue api, added whitespaces

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* mVar -> _var, camelCase -> snake_case

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* writing results to a csv file

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* style touchups and linters

Signed-off-by: Karsten Knese <karsten@openrobotics.org>

* A fix in fio command, thanks to Karsten Knese

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Added spinning (in thread) to handle parameters

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Typo fix

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* Applied review remarks
- node name changed to reflect package name
- value now in main and constructor takes name argument
- benchmark folder management adjusted to changes after rebase
- benchmark now remaps node (adding "_batch").
- removed unnecessary find on rosbag2_transport

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

* portable auto type to remove Windows warning. Thanks KK

Signed-off-by: Adam Dabrowski <adam.dabrowski@robotec.ai>

Co-authored-by: Piotr Jaroszek <jaroszekpiotr@gmail.com>
Co-authored-by: Piotr Jaroszek <piotr.jaroszek@robotec.ai>
Co-authored-by: Adam Dąbrowski <1961316-adamdbrw@users.noreply.gitlab.com>
Co-authored-by: Karsten Knese <karsten@openrobotics.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants