{"action":"created","issue":{"url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/64","repository_url":"https://api.github.com/repos/wesbland/mpi-forum-historic","labels_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/64/labels{/name}","comments_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/64/comments","events_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/64/events","html_url":"https://github.com/wesbland/mpi-forum-historic/issues/64","id":166687250,"number":64,"title":"Parameterized and optional named predefined datatypes in reduction operations","user":{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false},"assignees":[{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/wesbland/mpi-forum-historic/milestones/8","html_url":"https://github.com/wesbland/mpi-forum-historic/milestones/2009/07/27%20Chicago","labels_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/milestones/8/labels","id":1894748,"number":8,"title":"2009/07/27 Chicago","description":"","creator":{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":8,"state":"closed","created_at":"2016-07-20T18:12:55Z","updated_at":"2016-07-20T21:31:54Z","due_on":"2009-07-29T04:00:00Z","closed_at":"2016-07-20T18:12:55Z"},"comments":15,"created_at":"2016-07-20T21:31:51Z","updated_at":"2016-07-20T21:37:19Z","closed_at":null,"body":"**Originally by _RolfRabenseifner_ on 2008-12-13 04:13:29 -0600**\n\n___\n## Description\n\nTable 162:13-26\n```\nC integer:       MPI_INT, MPI_LONG, MPI_SHORT,\n                 MPI_UNSIGNED_SHORT, MPI_UNSIGNED,\n                 MPI_UNSIGNED_LONG,\n                 MPI_LONG_LONG_INT,\n                 MPI_LONG_LONG (as synonym),\n                 MPI_UNSIGNED_LONG_LONG,\n                 MPI_SIGNED_CHAR, MPI_UNSIGNED_CHAR\nFortran integer: MPI_INTEGER\nFloating point:  MPI_FLOAT, MPI_DOUBLE, MPI_REAL,\n                 MPI_DOUBLE_PRECISION\n                 MPI_LONG_DOUBLE\nLogical:         MPI_LOGICAL\nComplex:         MPI_COMPLEX\nByte:            MPI_BYTE\n```\nis missing a lot of basic datatype handles:\n\n - optional named predefined datatype handles as MPI_REAL8\n as shown in table 495:9-19\n\n - predefined datatype for parameterized datatypes as defined \n in Section 16.2.5 on page 471, i.e., predfined handles returned by \n the routines MPI_TYPE_CREATE_F90_REAL/COMPLEX/INTEGER\n\nBurden with current MPI-2.1 for applications:\n\n - If the application uses REAL*8 or \n   REAL(KIND=SELECTED_REAL_KIND(15,307)),\n   there portable is now way to use MPI reduction operations.\n - Application may use MPI_DOUBLE_PRECISION as datatype,\n   but this is not portable.\n\nThe missing datatypes in the tables on pages 416, 455 and 495\nare handled in Ticket #57.\n\nDo we want to add these to the set of allowed datatypes in reduction operations?\n\n## History\n\n## Proposed Solution\n\nAfter 162:20, add:[[BR]]\nand handles returned from MPI_TYPE_CREATE_F90_INTEGER,[[BR]]\nand if available: MPI_INTEGER1, MPI_INTEGER2, MPI_INTEGER4, MPI_INTEGER8, MPI_INTEGER16 \n\nAfter 162:23, add:[[BR]]\nand handles returned from MPI_TYPE_CREATE_F90_REAL,[[BR]]\nand if available: MPI_REAL2, MPI_REAL4, MPI_REAL8, MPI_REAL16\n\nAfter 162:25, add:[[BR]]\nand handles returned from MPI_TYPE_CREATE_F90_COMPLEX[[BR]]\nand if available: MPI_DOUBLE_COMPLEX, MPI_COMPLEX4, MPI_COMPLEX8, MPI_COMPLEX16, MPI_COMPLEX32 \n\nAfter 453:45, add:[[BR]]\nand handles returned from MPI::Datatype::Create_f90_integer,[[BR]]\nand if available: MPI::INTEGER1, MPI::INTEGER2, MPI::INTEGER4, MPI::INTEGER8, MPI::INTEGER16 \n\nAfter 453:48, add:[[BR]]\nand handles returned from MPI::Datatype::Create_f90_real,[[BR]]\nand if available: MPI::REAL2, MPI::REAL4, MPI::REAL8, MPI::REAL16\n\nAfter 455:28, add:[[BR]]\nand handles returned from MPI::Datatype::Create_f90_complex[[BR]]\nand if available: MPI::F_DOUBLE_COMPLEX, MPI::F_COMPLEX4, MPI::F_COMPLEX8, MPI::F_COMPLEX16, MPI::F_COMPLEX32 \n\n\n## Impact on Implementations\n\nWith *Fortran optional named predefinded datatype handles*: minor. [[BR]]\nWith *Fortran kind-parameterized predefined datatype handles*:\nsmall.\n\n## Impact on Applications / Users\n\nIn the future, applications that are using, e.g., REAL*8,\ncan use the correct datatype handle MPI_REAL8 in a portable way instead of using wrong MPI_DOUBLE_PRECISION.\n\n## Alternative Solutions\n\n## Entry for the Change Log\n\nSection 5.9.2 on page 161.[[BR]]\nPredefined parameterized datatypes (e.g., returned by MPI_TYPE_CREATE_F90_REAL) and optional named predefined datatypes (e.g. MPI_REAL8) have been added to the list of valid datatypes in reduction operations.\n\n-*If Ticket #18 is accepted, the following text is added to the entry:** \n[[BR]]\nMPI_(U)INT{8,16,32,64}_T, MPI_AINT, and MPI_OFFSET are considered C integer types for the purposes of the predefined reduction operators. MPI_C_BOOL is considered a Logical type."},"comment":{"url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/comments/234091270","html_url":"https://github.com/wesbland/mpi-forum-historic/issues/64#issuecomment-234091270","issue_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/64","id":234091270,"user":{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false},"created_at":"2016-07-20T21:37:19Z","updated_at":"2016-07-20T21:37:19Z","body":"**Originally by _RolfRabenseifner_ on 2009-02-05 16:42:51 -0600**\n\n___\nAnswer to Adam:\n\nI would keep the \"if available\" because all other must be provided my the MPI lib because they must be also provided by the compiler.\nMPI_REAL16 need not to exist. I want to be absolutely clear, that we do not\nrequire types in the MPI lib that do not exist for the compiler.\nOtherwise we would need a clarification (Advice to users) in MPI-3.0."}}
{"actor":{"display_login":"wesbland"}}