User`s guide
Contents
Page
Introduction [1] 13
1.1 The Cray XMT Programming Environment . . . . . . . . . . . . . . . . . 13
Setting Up the User Environment [2]
15
2.1 Setting Up a Secure Shell . . . . . . . . . . . . . . . . . . . . . . 15
2.1.1 RSA Authentication . . . . . . . . . . . . . . . . . . . . . . 15
2.1.2 Additional Information . . . . . . . . . . . . . . . . . . . . . 16
2.2 Using Modules . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.1 Modifying the
PATH Variable . . . . . . . . . . . . . . . . . . . 17
2.2.2 Software Locations . . . . . . . . . . . . . . . . . . . . . . 17
2.2.3 Module Commands . . . . . . . . . . . . . . . . . . . . . . 18
Developing an Application [3]
19
3.1 The Cray XMT Programming Environment . . . . . . . . . . . . . . . . . 19
3.2 Overview of Cray XMT Generic and Intrinsic Functions . . . . . . . . . . . . . 20
3.2.1 Generic Functions . . . . . . . . . . . . . . . . . . . . . . 20
3.2.1.1 Generic Write Functions . . . . . . . . . . . . . . . . . . . 21
3.2.1.2 Generic Read Functions . . . . . . . . . . . . . . . . . . . 22
3.2.2 Intrinsic Functions . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Adding Synchronization to an Application . . . . . . . . . . . . . . . . . 24
3.3.1 Synchronizing Data Using int_fetch_add .............. 25
3.3.2 Avoiding Deadlock . . . . . . . . . . . . . . . . . . . . . . 25
3.4 Programming Considerations for Floating-point Operations . . . . . . . . . . . . 26
3.4.1 Differences from IEEE Floating-point Arithmetic . . . . . . . . . . . . . . 28
3.4.2 Differences from Cray Floating-point Arithmetic . . . . . . . . . . . . . . 29
3.4.3 32-bit and 64-bit Implementation of Floating-point Arithmetic . . . . . . . . . . 30
3.4.4 Rounding Results of Floating-point Operations . . . . . . . . . . . . . . 30
3.5 Using Futures in an Application . . . . . . . . . . . . . . . . . . . . 31
3.5.1 Improving Performance of Future Statements . . . . . . . . . . . . . . . 32
3.5.2 Anonymous futures . . . . . . . . . . . . . . . . . . . . . . 34
S–2479–20 7