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

registeration memory failed with errno: Cannot allocate memory #12

Open
glock42 opened this issue Oct 17, 2021 · 2 comments
Open

registeration memory failed with errno: Cannot allocate memory #12

glock42 opened this issue Oct 17, 2021 · 2 comments

Comments

@glock42
Copy link

glock42 commented Oct 17, 2021

I'm using two nodes to run Assise and use 60G DRAM to emulate NVM.

I got the error ibv_reg_mr failed [error code: 12]. This is because ibv_reg_mr can't work with a large size.

initialize file system
dev-dax engine is initialized: dev_path /dev/dax0.0 size 49152 MB
Reading root inode with inum: 1fetching node's IP address..
Process pid is 34400
ip address on interface 'ib0' is 10.10.1.3
cluster settings:
--- node 0 - ip:10.10.1.3
--- node 1 - ip:10.10.1.2
Connecting to KernFS instance 1 [ip: 10.10.1.2]
[RDMA-Client] Creating connection (pid:0, app_type:0, status:pending) to 10.10.1.2:12345 on sockfd 0
[RDMA-Client] Creating connection (pid:0, app_type:1, status:pending) to 10.10.1.2:12345 on sockfd 1
[RDMA-Client] Creating connection (pid:0, app_type:2, status:pending) to 10.10.1.2:12345 on sockfd 2
[RDMA-Server] Listening on port 12345 for connections. interrupt (^C) to exit.
creating background thread to poll completions (blocking) test
register memory
registering mr #0 with addr:140431182528512 and size:4299161600
registeration failed with errno: Cannot allocate memory
ibv_reg_mr failed [error code: 12]

I keep reducing the g_log_size to 4096, then it works. Not sure how can I use a larger log size?

Thanks

@simpeter
Copy link

simpeter commented Oct 18, 2021 via email

@wreda
Copy link
Contributor

wreda commented Oct 30, 2021

Sorry for jumping in a bit late.

As Simon mentioned, you will likely need to allocate at least 16 MB of log space to get decent performance.

The error you're encountering is raised by the RDMA device driver (so it's not Assise-related). It seems that it's unable to pin larger memory regions. This limit might be imposed by your OS' max locked memory parameter. I'd double-check first that its value is large enough (by running ulimit -l), and increase as needed.

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

No branches or pull requests

3 participants