{"action":"created","issue":{"url":"https://api.github.com/repos/ofi-cray/libfabric-cray/issues/255","labels_url":"https://api.github.com/repos/ofi-cray/libfabric-cray/issues/255/labels{/name}","comments_url":"https://api.github.com/repos/ofi-cray/libfabric-cray/issues/255/comments","events_url":"https://api.github.com/repos/ofi-cray/libfabric-cray/issues/255/events","html_url":"https://github.com/ofi-cray/libfabric-cray/issues/255","id":91285199,"number":255,"title":"Collect requirements for GASNET support over libfabric","user":{"login":"hppritcha","id":7818666,"avatar_url":"https://avatars.githubusercontent.com/u/7818666?v=3","gravatar_id":"","url":"https://api.github.com/users/hppritcha","html_url":"https://github.com/hppritcha","followers_url":"https://api.github.com/users/hppritcha/followers","following_url":"https://api.github.com/users/hppritcha/following{/other_user}","gists_url":"https://api.github.com/users/hppritcha/gists{/gist_id}","starred_url":"https://api.github.com/users/hppritcha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hppritcha/subscriptions","organizations_url":"https://api.github.com/users/hppritcha/orgs","repos_url":"https://api.github.com/users/hppritcha/repos","events_url":"https://api.github.com/users/hppritcha/events{/privacy}","received_events_url":"https://api.github.com/users/hppritcha/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-06-26T15:51:54Z","updated_at":"2015-06-30T16:57:59Z","closed_at":null,"body":"The GNI provider will need to provide functionality required by the GASNET libfabric conduit.  Obviously this is a shifting target, but we would like to at least be able to support an initial conduit.  "},"comment":{"url":"https://api.github.com/repos/ofi-cray/libfabric-cray/issues/comments/117255785","html_url":"https://github.com/ofi-cray/libfabric-cray/issues/255#issuecomment-117255785","issue_url":"https://api.github.com/repos/ofi-cray/libfabric-cray/issues/255","id":117255785,"user":{"login":"hppritcha","id":7818666,"avatar_url":"https://avatars.githubusercontent.com/u/7818666?v=3","gravatar_id":"","url":"https://api.github.com/users/hppritcha","html_url":"https://github.com/hppritcha","followers_url":"https://api.github.com/users/hppritcha/followers","following_url":"https://api.github.com/users/hppritcha/following{/other_user}","gists_url":"https://api.github.com/users/hppritcha/gists{/gist_id}","starred_url":"https://api.github.com/users/hppritcha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hppritcha/subscriptions","organizations_url":"https://api.github.com/users/hppritcha/orgs","repos_url":"https://api.github.com/users/hppritcha/repos","events_url":"https://api.github.com/users/hppritcha/events{/privacy}","received_events_url":"https://api.github.com/users/hppritcha/received_events","type":"User","site_admin":false},"created_at":"2015-06-30T16:57:59Z","updated_at":"2015-06-30T16:57:59Z","body":"Gasnet with the ofi-conduit can be cloned from\r\nhttps://bitbucket.org/berkeleylab/gasnet.git\r\n\r\nThe ofi code is on a topic branch:\r\ngit checkout feature/ofi-conduit\r\n\r\nThe ofi conduit uses 2 ```FI_EP_RDM``` endpoints per gasnet \"rank\".\r\nFor one of the endpoints, ```FI_RMA``` caps is requested. For the other endpoint, ```FI_MSG``` and ```FI_MULTI_RECV``` caps are requested.  For both endpoints the ```mode``` field to the hints for ```fi_getinfo``` is set to ```FI_CONTEXT```.\r\n\r\nFor both endpoints, the ```tx_attr->op_flags``` are set to ```FI_DELIVERY_COMPLETE | FI_COMPLETION```.  For the messaging endpoint, the ```rx_attr->op_flags``` is set to ```FI_DELIVERY_COMPLETE | FI_COMPLETION```\r\n\r\nThread safety level ```FI_THREAD_SAFE``` is requested.\r\n\r\n```FI_PROGRESS_AUTO``` is requested for control_progress.  No specific progress model is requested for data_progress.\r\n\r\nResource management type is requested to be ```FI_RM_ENABLED```.\r\n\r\nThe av_type requested is ```FI_AV_TABLE```.\r\n\r\nThe CQ format type used is ```FI_CQ_FORMAT_DATA```.\r\n\r\nLibfabric transaction management methods used by gasnet at this time:\r\n\r\n```fi_cq_read```\r\n```fi_cq_readerr```\r\n```fi_send```\r\n```fi_inject```\r\n```fi_recvmsg``` - FI_ADDR_UNSPEC is used when posting receive buffers.  The FI_MULTI_RECV flag is used.\r\n```fi_write```\r\n```fi_read```\r\n\r\nThis looks kind of okay, but there is a big problem for the GNI provider, namely the RMA endpoint makes the assumptions that the ```mr_mode``` is set to ```FI_MR_SCALABLE```.  We would either need to rework the gasnet ofi-conduit to make use of memory registration, or hide the need to exchange memory keys, or turn puts in to gets and gets in to puts under the hood.\r\n\r\n"}}