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

What is the best way in running sumo with multi-threading and multi-CPU #14891

Closed
mylidy opened this issue May 20, 2024 · 3 comments
Closed

What is the best way in running sumo with multi-threading and multi-CPU #14891

mylidy opened this issue May 20, 2024 · 3 comments
Labels

Comments

@mylidy
Copy link

mylidy commented May 20, 2024

I wanna run a large scale simulation(whole urban transportation data during morning rush hour, 3600 seconds,300K vehicles, 80 intersections with TLS) in a server(2 CPUs , 32 cores in total , 2.5Ghz , 128GB memory,960GB SSD),each lane has its E2
detector. What is the best way in running sumo with multi-threading and multi-CPU,or ,what should I do to reduce the time cost of simulation extremely , or , what should I do to fully leverage hardware performance?

OS: Linux

Thanks.

@behrisch
Copy link
Contributor

Did you already check the hints here: https://sumo.dlr.de/docs/FAQ.html#how_can_i_make_the_simulation_run_faster?

@mylidy
Copy link
Author

mylidy commented May 20, 2024

Did you already check the hints here: https://sumo.dlr.de/docs/FAQ.html#how_can_i_make_the_simulation_run_faster?

Thanks for your answer.

Yeah , I have checked, but:

->make sure there are [no unwanted jams] The more vehicles there are in the simulation, the slower it gets.
All of data in my simulation comes from real world, the source of vehicle data is traffic cameras. The map comes from OSM.

->if your network is very large, build it with option --no-internal-links
Has done.

->If you are using trips or periodic rerouting, enable [parallel routing]
there is no periodic

->use the default step-length of 1s (using --step-length 0.1 slows down the simulation by a factor of 10)
Has done

->if your simulation is very larger. consider using the [mesoscopic simulation model]
MESO doesn't support E2.

You once wrote in an answer(libsumo can't support multi-thread? #14176 ): Parallel execution should be possible but there have been many fixes to that in the past year, Can I assume that SUMO can fully leverage the hardware's performance without any settings?

Thanks.

@behrisch
Copy link
Contributor

->make sure there are [no unwanted jams] The more vehicles there are in the simulation, the slower it gets. All of data in my simulation comes from real world, the source of vehicle data is traffic cameras. The map comes from OSM.

That does not mean you have realistic jams, especially if you did not check the traffic lights and the junctions.

->if your simulation is very larger. consider using the [mesoscopic simulation model] MESO doesn't support E2.

Depending on which output of the E2 you actually need you might be better of using meandata which is computationally more efficient and available for meso.

You once wrote in an answer(libsumo can't support multi-thread? #14176 ): Parallel execution should be possible but there have been many fixes to that in the past year, Can I assume that SUMO can fully leverage the hardware's performance without any settings?

This issue was about accessing libsumo from multiple (python) threads. It has nothing to do with speeding up sumo.

We are working on a parallelized sumo and you may want to try out the --threads switch but be warned that it is still alpha stage code so it might crash and the speedups are not great.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants