{"action":"opened","issue":{"url":"https://api.github.com/repos/gamer-project/gamer/issues/7","repository_url":"https://api.github.com/repos/gamer-project/gamer","labels_url":"https://api.github.com/repos/gamer-project/gamer/issues/7/labels{/name}","comments_url":"https://api.github.com/repos/gamer-project/gamer/issues/7/comments","events_url":"https://api.github.com/repos/gamer-project/gamer/issues/7/events","html_url":"https://github.com/gamer-project/gamer/issues/7","id":356055169,"node_id":"MDU6SXNzdWUzNTYwNTUxNjk=","number":7,"title":"Large memory consumption caused by preallocating patch pointers","user":{"login":"hyschive","id":18057331,"node_id":"MDQ6VXNlcjE4MDU3MzMx","avatar_url":"https://avatars3.githubusercontent.com/u/18057331?v=4","gravatar_id":"","url":"https://api.github.com/users/hyschive","html_url":"https://github.com/hyschive","followers_url":"https://api.github.com/users/hyschive/followers","following_url":"https://api.github.com/users/hyschive/following{/other_user}","gists_url":"https://api.github.com/users/hyschive/gists{/gist_id}","starred_url":"https://api.github.com/users/hyschive/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hyschive/subscriptions","organizations_url":"https://api.github.com/users/hyschive/orgs","repos_url":"https://api.github.com/users/hyschive/repos","events_url":"https://api.github.com/users/hyschive/events{/privacy}","received_events_url":"https://api.github.com/users/hyschive/received_events","type":"User","site_admin":false},"labels":[{"id":778076672,"node_id":"MDU6TGFiZWw3NzgwNzY2NzI=","url":"https://api.github.com/repos/gamer-project/gamer/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-08-31T16:55:51Z","updated_at":"2018-08-31T16:55:51Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Currently, the code will always preallocate 2*NLEVEL*MAX_PATCH patch object pointers in each MPI process, where NLEVEL=10 and MAX_PATCH=1e6 are the default values set in Makefile. Accordingly, each process will consume 2*10*1e6*sizeof(pointer) ~ 160 MB of memory, independent of the number of patches actually allocated on each level. This is usually not a problem but will become more serious if one launch many MPI processes on each node.\r\n\r\nA temporary solution is to simply adopt a smaller value of MAX_PATCH by default and increase it only when necessary."}}
{"actor":{"display_login":"hyschive"}}