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

Bad allocation error #7045

Open
gopal-mp opened this issue Oct 1, 2024 · 8 comments
Open

Bad allocation error #7045

gopal-mp opened this issue Oct 1, 2024 · 8 comments
Labels

Comments

@gopal-mp
Copy link

gopal-mp commented Oct 1, 2024

Issue

Please describe the issue you are seeing with OSRM.
Images are a good way to illustrate your problem.

Note: If your issue relates to the demo site (https://map.project-osrm.org) or routing provided on openstreetmap.org, be aware that they use separate profile settings from those provided by default in osrm-backend.
If your issue relates to the demo site or openstreetmap.org behaviour, please check these profiles first to see if they explain the behaviour before creating an issue here.

Steps to reproduce

Please provide the steps required to reproduce your problem.

  • osrm-backend version being used
  • OSM extract that was processed
  • Processing commands (e.g. CH vs MLD processing)
  • Server queries

If you're reporting an issue with https://map.project-osrm.org, please provide a link to the problematic request.

Specifications

Please provide details of your development environment.

  • Library/dependency versions
  • Operating system
  • Hardware
@gopal-mp gopal-mp changed the title Hi guys, I need help setting up OSRM backend on windows server 2022. I have done the extraction process with 64 GB RAM and 8 core processor with 260 GB of virtual memory and in the contract I am getting error (insufficient memory). Then I scaled up the system (128GB RAM with 16 Core processor) but still same error. I am wondering, extraction happened successfully but contract process is not happening. Your help would be really appreciated. Hi guys, I need help setting up OSRM backend on windows server 2022. I have done the extraction process with 64 GB RAM and 8 core processor with 260 GB of virtual memory and in the contract I am getting error (insufficient memory). Then I scaled up the system (128GB RAM with 16 Core processor) but still same error. I am wondering, extraction happened successfully but contract process is not happening it will get fail each and every time after increasing resource as well, now I have 16 Core CPU, 128GB RAM and 600 GB virtual memory. Your help would be really appreciated. Oct 1, 2024
@jcoupey
Copy link

jcoupey commented Oct 1, 2024

If you want help, you need to make it easy for others to read your issue. Can you please pick a small and descriptive title, then put all the relevant information in the issue details (instead of leaving the issue template unchanged)?

@gopal-mp
Copy link
Author

gopal-mp commented Oct 1, 2024

If you want help, you need to make it easy for others to read your issue. Can you please pick a small and descriptive title, then put all the relevant information in the issue details (instead of leaving the issue template unchanged)?

Sure, I am trying migrate osrm backend setup from windows 10 with docker desktop to windows server 2022 (Azure VM).
Since docker desktop is not supported in server version of windows I am using windows binaries (v5.16.0)
My pbf file has merged data of few continents of size 48 GB.
I tried extraction with 64 GB RAM and 8 core processor and 300 GB of virtual memory, it took 6 days to complete.
After completion of extraction I tried contract (CH algorithm), but it got failed and showed error message saying
"Bad allocation, Please provide more memory or consider using large swap space"

then I upgraded the VM with 128GB RAM and 16 Core processor, but still I am getting same error.
I tried running contract process by reducing number of threads also, it didn't worked out.

also, I tried MLD algorithm also, partition and customization steps are successfully completed but I am not getting shortest distance for all coordinates, for most of the requests I am getting response as "No shortest distance found between two points" even though we have shortest distance (giving shortest distance in my old setup (windows 10 with docker))
Note: I am trying car profile
Please help me setting up the backend or am I doing mistake in any of the steps?

@jcoupey
Copy link

jcoupey commented Oct 1, 2024

128G RAM is not enough to extract a 48G pbf file, see https://github.com/Project-OSRM/osrm-backend/wiki/Disk-and-Memory-Requirements.

@gopal-mp
Copy link
Author

gopal-mp commented Oct 1, 2024

Actually my extraction was completed with 64 GB RAM with 300 GB virtual memory.
But at the end it gave same warning multiple times "Turn is u turn but not classified as a u turn".
In my older settup also (win 10 with docker desktop with wsl) I have used 64 GB RAM with 260 GB swap memory.

After extraction total size is 215 GB, But contract is not happening even with 128 GB as well.

And in MLD approach both partition and customise are completed but not giving distance for most of the coordinates after routing, is that because of the warning that I received in the time of extraction?

@jcoupey jcoupey changed the title Hi guys, I need help setting up OSRM backend on windows server 2022. I have done the extraction process with 64 GB RAM and 8 core processor with 260 GB of virtual memory and in the contract I am getting error (insufficient memory). Then I scaled up the system (128GB RAM with 16 Core processor) but still same error. I am wondering, extraction happened successfully but contract process is not happening it will get fail each and every time after increasing resource as well, now I have 16 Core CPU, 128GB RAM and 600 GB virtual memory. Your help would be really appreciated. Bad allocation error Oct 1, 2024
@gopal-mp
Copy link
Author

gopal-mp commented Oct 6, 2024

Hi @jcoupey any suggestions or comments?

@jcoupey
Copy link

jcoupey commented Oct 7, 2024

My first test would be to try the whole extract/contract toolchain on a much smaller OSM extract to see if it works.

@gopal-mp
Copy link
Author

gopal-mp commented Oct 7, 2024

I tried many small files, it worked fine.
even I tried england data (1.3 GB file) it is also giving correct results.

"Turn is u turn but not classified as a u turn" is this warning while extraction may be the issue? or warnings are fine in extraction?

@gopal-mp
Copy link
Author

gopal-mp commented Oct 7, 2024

Just now I re completed all 3 steps (extraction, partition, customize) of mld algorithm.
but it is not giving proper results.
I tried this : http://localhost:5000/route/v1/driving/-2.2892203985804755,53.604017274352515;-1.8842546987176998,52.52374243277772?overview=false
But as a result I am getting this response
{
"code": "NoRoute",
"message": "No route found between points"
}

but we have shortest distance between these two points.
my old setup (windows 10, docker desktop, CH algorithm) is giving results and OSRM API also giving results

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