BS PD ISO IEC TS 18508-2015 Information technology Additional Parallel Features in Fortran《信息技术 用Fortran的附加并行特征》.pdf

上传人:livefirmly316 文档编号:398706 上传时间:2018-10-19 格式:PDF 页数:66 大小:2MB
下载 相关 举报
BS PD ISO IEC TS 18508-2015 Information technology Additional Parallel Features in Fortran《信息技术 用Fortran的附加并行特征》.pdf_第1页
第1页 / 共66页
BS PD ISO IEC TS 18508-2015 Information technology Additional Parallel Features in Fortran《信息技术 用Fortran的附加并行特征》.pdf_第2页
第2页 / 共66页
BS PD ISO IEC TS 18508-2015 Information technology Additional Parallel Features in Fortran《信息技术 用Fortran的附加并行特征》.pdf_第3页
第3页 / 共66页
BS PD ISO IEC TS 18508-2015 Information technology Additional Parallel Features in Fortran《信息技术 用Fortran的附加并行特征》.pdf_第4页
第4页 / 共66页
BS PD ISO IEC TS 18508-2015 Information technology Additional Parallel Features in Fortran《信息技术 用Fortran的附加并行特征》.pdf_第5页
第5页 / 共66页
亲,该文档总共66页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、BSI Standards Publication Information technology Additional Parallel Features in Fortran PD ISO/IEC TS 18508:2015National foreword This Published Document is the UK implementation of ISO/IEC TS 18508:2015. The UK participation in its preparation was entrusted to Technical Com- mittee IST/5, Programm

2、ing languages, their environments and system software interfaces. A list of organizations represented on this committee can be obtained on request to its secretary. This publication does not purport to include all the necessary provisions of a contract. Users are responsible for its correct applicat

3、ion. The British Standards Institution 2015. Published by BSI Standards Limited 2015 ISBN 978 0 580 90628 2 ICS 35.060 Compliance with a British Standard cannot confer immunity from legal obligations. This Published Document was published under the authority of the Standards Policy and Strategy Comm

4、ittee on 31 December 2015. Amendments/corrigenda issued since publication Date Text affected PUBLISHED DOCUMENT PD ISO/IEC TS 18508:2015Information technology Additional Parallel Features in Fortran Technologies de linformation Caractristiques parallles supplmentaires en Fortran ISO/IEC TS 18508 Fir

5、st edition 2015-12-01 Reference number ISO/IEC TS 18508:2015(E) TECHNICAL SPECIFICATION ISO/IEC 2015 PD ISO/IEC TS 18508:2015 ii ISO/IEC 2015 All rights reserved COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2015, Published in Switzerland All rights reserved. Unless otherwise specified, no part of this publi

6、cation may be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below or ISOs member body in the count

7、ry of the requester. ISO copyright office Ch. de Blandonnet 8 CP 401 CH-1214 Vernier, Geneva, Switzerland Tel. +41 22 749 01 11 Fax +41 22 749 09 47 copyrightiso.org www.iso.org ISO/IEC TS 18508:2015(E) PD ISO/IEC TS 18508:2015ISO/IEC TS 18508:2015(E) Contents 1 Scope . . . . . . . . . . . . . . . .

8、 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 Normative references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 Terms and denitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9、. . . . . . 5 4 Compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.1 New intrinsic procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.2 Fortran 2008 compatibility . . . . . . . . . . . .

10、. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 5 Teams of images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.1 Team concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.2 TEAM T

11、YPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.3 CHANGE TEAM construct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.4 Image selectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12、. . . . . . . . . 11 5.5 FORM TEAM statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.6 SYNC TEAM statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 6 Failed images . . . . . . . . . . . . . . . . . . . . . . .

13、 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 6.2 FAIL IMAGE statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 6.3 CRITICAL c

14、onstruct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.4 STAT FAILED IMAGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 7 Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15、. . . . . . . . . . . 17 7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 7.2 EVENT TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 7.3 EVENT POST statement . . . . . . . . . . . .

16、. . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 7.4 EVENT WAIT statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 8 Intrinsic procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.1 General .

17、 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.2 Atomic subroutines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 8.3 Collective subroutines . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18、 . . . . . . . . . . . . . . . 20 8.4 New intrinsic procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 8.4.1 ATOMIC ADD (ATOM, VALUE , STAT) . . . . . . . . . . . . . . . . . . . . . . . . . 21 8.4.2 ATOMIC AND (ATOM, VALUE , STAT) . . . . . . . . . . . .

19、 . . . . . . . . . . . . . 21 8.4.3 ATOMIC CAS (ATOM, OLD, COMPARE, NEW , STAT) . . . . . . . . . . . . . . . . 22 8.4.4 ATOMIC FETCH ADD (ATOM, VALUE, OLD , STAT) . . . . . . . . . . . . . . . . . 22 8.4.5 ATOMIC FETCH AND (ATOM, VALUE, OLD , STAT) . . . . . . . . . . . . . . . . . 22 8.4.6 ATOMIC

20、FETCH OR (ATOM, VALUE, OLD , STAT) . . . . . . . . . . . . . . . . . . 23 8.4.7 ATOMIC FETCH XOR (ATOM, VALUE, OLD , STAT) . . . . . . . . . . . . . . . . . 23 8.4.8 ATOMIC OR (ATOM, VALUE , STAT) . . . . . . . . . . . . . . . . . . . . . . . . . . 24 8.4.9 ATOMIC XOR (ATOM, VALUE , STAT) . . . . .

21、. . . . . . . . . . . . . . . . . . . . 24 8.4.10 CO BROADCAST (A, SOURCE IMAGE , STAT, ERRMSG) . . . . . . . . . . . . . . 24 8.4.11 CO MAX (A , RESULT IMAGE, STAT, ERRMSG) . . . . . . . . . . . . . . . . . . . . 25 8.4.12 CO MIN (A , RESULT IMAGE, STAT, ERRMSG) . . . . . . . . . . . . . . . . . .

22、. . 25 8.4.13 CO REDUCE (A, OPERATOR , RESULT IMAGE, STAT, ERRMSG) . . . . . . . . . 26 c ISO/IEC 2015 All rights reserved iii PD ISO/IEC TS 18508:2015ISO/IEC TS 18508:2015(E) 8.4.14 CO SUM (A , RESULT IMAGE, STAT, ERRMSG) . . . . . . . . . . . . . . . . . . . . 27 8.4.15 EVENT QUERY ( EVENT, COUNT

23、, STAT) . . . . . . . . . . . . . . . . . . . . . . . 27 8.4.16 FAILED IMAGES (TEAM, KIND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 8.4.17 GET TEAM (LEVEL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 8.4.18 IMAGE STATUS (IMAGE, TEAM) . . . . . . . .

24、 . . . . . . . . . . . . . . . . . . . . . 29 8.4.19 STOPPED IMAGES (TEAM, KIND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 8.4.20 TEAM NUMBER (TEAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 8.5 Modied intrinsic procedures . . . . . . . . . . . . . . . .

25、 . . . . . . . . . . . . . . . . . . . . . . . 31 8.5.1 ATOMIC DEFINE and ATOMIC REF . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 8.5.2 IMAGE INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 8.5.3 MOVE ALLOC . . . . . . . . . . . . . . . . . .

26、. . . . . . . . . . . . . . . . . . . . . . . 31 8.5.4 NUM IMAGES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 8.5.5 THIS IMAGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 9 Required editorial changes to ISO/IEC 1539-

27、1:2010(E) . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 9.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 9.2 Edits to Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 9

28、.3 Edits to clause 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 9.4 Edits to clause 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 9.5 Edits to clause 4 . . . . . . . . . . . . . . . . . . . . . . .

29、 . . . . . . . . . . . . . . . . . . . . . . . 35 9.6 Edits to clause 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 9.7 Edits to clause 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 9.8 Edits to cla

30、use 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 9.9 Edits to clause 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 9.10 Edits to clause 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31、 . . . . . . . . . . . . . . . 43 9.11 Edits to annex A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 9.12 Edits to annex C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Annex A (informative) Extended notes

32、 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 A.1 Clause 5 notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 A.1.1 Example using three teams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

33、 A.1.2 Accessing coarrays in sibling teams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 A.1.3 Reducing the codimension of a coarray . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 A.2 Clause 6 notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

34、. . . . . . . . . . . 47 A.2.1 Example involving failed images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 A.3 Clause 7 notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 A.3.1 EVENT QUERY example . . . . . . . . . . . . . .

35、. . . . . . . . . . . . . . . . . . . . . 49 A.3.2 EVENT QUERY example that tolerates image failure . . . . . . . . . . . . . . . . . . . . 50 A.3.3 EVENTS example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 A.4 Clause 8 notes . . . . . . . . . . . . . . . . .

36、. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 A.4.1 Collective subroutine examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 A.4.2 Atomic memory consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 iv c ISO/IEC 2015 All rights

37、 reserved PD ISO/IEC TS 18508:2015ISO/IEC TS 18508:2015(E) Foreword ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commis- sion) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate

38、 in the development of International Standards through technical committees established by the respective organization to deal with particular elds of technical activity. ISO and IEC technical committees collaborate in elds of mutual interest. Other international organizations, governmental and nong

39、overnmental, in liaison with ISO and IEC, also take part in the work. In the eld of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2. The main task

40、 of the joint technical committee is to prepare International Standards. Draft International Stand- ards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a

41、 vote. In other circumstances, particularly when there is an urgent market requirement for such documents, the joint technical committee may decide to publish an ISO/IEC Technical Specication (ISO/IEC TS), which represents an agreement between the members of the joint technical committee and is acce

42、pted for publication if it is approved by 2/3 of the members of the committee casting a vote. An ISO/IEC TS is reviewed after three years in order to decide whether it will be conrmed for a further three years, revised to become an International Standard, or withdrawn. If the ISO/IEC TS is conrmed,

43、it is reviewed again after a further three years, at which time it must either be transformed into an International Standard or be withdrawn. Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be held responsibl

44、e for identifying any or all such patent rights. ISO/IEC TS 18508:2015 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC22, Programming languages, their environments and system software interfaces. c ISO/IEC 2015 All rights reserved v PD ISO/IEC TS 1850

45、8:2015ISO/IEC TS 18508:2015(E) Introduction The system for parallel programming in Fortran, as standardized by ISO/IEC 1539-1:2010, denes simple syntax for access to data on another image of a program, synchronization statements for controlling the ordering of execution segments between images, and

46、collective allocation and deallocation of memory on all images. The existing system for parallel programming does not provide for an environment where a subset of the images can easily work on part of an application while not aecting other images in the program. This complicates development of indep

47、endent parts of an application by separate teams of programmers. The existing system does not provide a mechanism for a processor to identify what images have failed during execution of a program. This adversely aects the resilience of programs executing on large systems. The synchronization primiti

48、ves available in the existing system do not provide a convenient mechanism for ordering execution segments on dierent images without requiring that those images arrive at a synchronization point before either is allowed to proceed. This introduces unnecessary ineciency into programs. Finally, the ex

49、isting system does not provide intrinsic procedures for commonly used collective and atomic memory operations. Intrinsic procedures for these operations can be highly optimized for the target computational system, providing signicantly improved program performance. This Technical Specication extends the facilites of Fortran for parallel programming to provide for grouping the images of a program into nonoverlapping teams that can more eectively execute independently parts of a larger problem, for t

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 标准规范 > 国际标准 > BS

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1