XL Fortran: Optimization and Programming Guide Linkage Convention for Argument Passing ....267 Minimizing Rounding Errors

Total Page:16

File Type:pdf, Size:1020Kb

XL Fortran: Optimization and Programming Guide Linkage Convention for Argument Passing ....267 Minimizing Rounding Errors IBM XL Fortran for Blue Gene/Q, V14.1 Optimization and Programming Guide Ve r s i o n 1 4 .1 SC14-7370-00 IBM XL Fortran for Blue Gene/Q, V14.1 Optimization and Programming Guide Ve r s i o n 1 4 .1 SC14-7370-00 Note Before using this information and the product it supports, read the information in “Notices” on page 311. First edition This edition applies to IBM XL Fortran for Blue Gene/Q, V14.1 (Program 5799-AH1) and to all subsequent releases and modifications until otherwise indicated in new editions. Make sure you are using the correct edition for the level of the product. © Copyright IBM Corporation 1990, 2012. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents About this information ........vii Chapter 3. Advanced optimization Who should read this information.......vii concepts ..............41 How to use this information ........vii Aliasing ...............41 How this information is organized ......vii Inlining................41 Conventions ..............viii Finding the right level of inlining ......42 Related information ...........xii IBM XL Fortran information........xii Chapter 4. Managing code size ....45 Standards and specifications .......xiii Steps for reducing code size .........46 Other IBM information .........xiv Compiler option influences on code size.....46 Technical support ............xiv The -qipa compiler option ........46 How to send your comments ........xiv The -qinline inlining option ........46 The -qhot compiler option ........47 Chapter 1. Optimizing your applications 1 The -qcompact compiler option.......47 Distinguishing between optimization and tuning . 1 Other influences on code size ........47 Steps in the optimization process .......2 High activity areas ...........47 Basic optimization ............2 Computed GOTOs and CASE constructs . 47 Optimizing at level 0 ..........3 Code size with dynamic or static linking . 48 Optimizing at level 2 ..........3 Advanced optimization ...........4 Chapter 5. Compiler-friendly Optimizing at level 3 ..........5 programming techniques .......51 An intermediate step: adding -qhot suboptions at level 3 ...............6 General practices ............51 Optimizing at level 4 ..........7 Variables and pointers ...........51 Optimizing at level 5 ..........8 Arrays ................52 Specialized optimization techniques ......8 Choosing appropriate variable sizes ......52 High-order transformation (HOT) ......9 Interprocedural analysis (IPA) .......11 Chapter 6. High performance libraries 55 Vector technology ...........14 Using the Mathematical Acceleration Subsystem Using compiler reports to diagnose optimization libraries (MASS) .............55 opportunities .............18 Using the scalar library .........56 Debugging optimized code .........20 Using the vector libraries .........58 Understanding different results in optimized Using the SIMD library .........62 programs ..............21 Compiling and linking a program with MASS . 64 Debugging in the presence of optimization . 21 Using the Basic Linear Algebra Subprograms – Using -qoptdebug to help debug optimized BLAS ................65 programs ..............22 BLAS function syntax ..........65 Tracing procedures in your code .......25 Linking the libxlopt library ........67 Getting more performance .........29 Beyond performance: effective programming Chapter 7. Parallel programming with techniques ...............30 XL Fortran .............69 Thread-level speculative execution.......69 Chapter 2. Tuning XL compiler Transactional memory ...........70 applications ............31 Profiler for OpenMP ...........72 Tuning for your target architecture ......31 Compiling your parallelized code .......72 Using -qarch .............31 The _OPENMP C preprocessor macro and Using -qtune .............32 conditional compilation .........73 Using -qcache ............33 Setting runtime options ..........74 Before you finish tuning .........33 XLSMPOPTS .............74 Tuning your code for Blue Gene .......33 BG_SMP_FAST_WAKEUP ........78 Further option driven tuning ........35 BG_SPEC_SCRUB_CYCLE ........79 Options for providing application characteristics 36 Environment variables for OpenMP .....79 Options to control optimization transformations 38 Environment variables for thread-level Options to assist with performance analysis . 39 speculative execution ..........85 Options that can inhibit performance .....40 Environment variables for transactional memory 86 Optimizing your SMP code .........89 © Copyright IBM Corp. 1990, 2012 iii Developing and running SMP applications . 89 f_pthread_mutex_t ..........233 Parallelization directives ..........90 f_pthread_mutex_trylock(mutex) ......233 An introduction to parallelization directives . 90 f_pthread_mutex_unlock(mutex) ......234 Detailed descriptions of parallelization directives 93 f_pthread_mutexattr_destroy(mattr) .....234 Directive clauses ...........146 f_pthread_mutexattr_getpshared(mattr, pshared) 235 Routines for parallel programming ......173 f_pthread_mutexattr_gettype(mattr, type) . 236 Routines for OpenMP .........173 f_pthread_mutexattr_init(mattr) ......237 Routines for thread-level speculative execution 195 f_pthread_mutexattr_setpshared(mattr, pshared) 237 Routines for transactional memory .....197 f_pthread_mutexattr_settype(mattr, type) . 238 Pthreads library module..........201 f_pthread_mutexattr_t .........239 Pthreads data structures, functions, and f_pthread_once(once, initr) ........239 subroutines .............202 f_pthread_once_t ...........239 f_maketime(delay)...........204 f_pthread_rwlock_destroy(rwlock) .....240 f_pthread_attr_destroy(attr)........205 f_pthread_rwlock_init(rwlock, rwattr) ....240 f_pthread_attr_getdetachstate(attr, detach) . 205 f_pthread_rwlock_rdlock(rwlock) ......241 f_pthread_attr_getguardsize(attr, guardsize) . 206 f_pthread_rwlock_t ..........241 f_pthread_attr_getinheritsched(attr, inherit) . 206 f_pthread_rwlock_tryrdlock(rwlock) .....242 f_pthread_attr_getschedparam(attr, param) . 207 f_pthread_rwlock_trywrlock(rwlock) ....242 f_pthread_attr_getschedpolicy(attr, policy) . 208 f_pthread_rwlock_unlock(rwlock) .....243 f_pthread_attr_getscope(attr, scope) .....208 f_pthread_rwlock_wrlock(rwlock) .....243 f_pthread_attr_getstack(attr, stackaddr, ssize) 209 f_pthread_rwlockattr_destroy(rwattr) ....244 f_pthread_attr_init(attr) .........209 f_pthread_rwlockattr_getpshared(rwattr, f_pthread_attr_setdetachstate(attr, detach) . 210 pshared) ..............244 f_pthread_attr_setguardsize(attr, guardsize) . 211 f_pthread_rwlockattr_init(rwattr) ......245 f_pthread_attr_setinheritsched(attr, inherit) . 211 f_pthread_rwlockattr_setpshared(rwattr, f_pthread_attr_setschedparam(attr, param) . 212 pshared) ..............246 f_pthread_attr_setschedpolicy(attr, policy) . 213 f_pthread_rwlockattr_t .........246 f_pthread_attr_setscope(attr, scope) .....213 f_pthread_self()............247 f_pthread_attr_setstack(attr, stackaddr, ssize) 214 f_pthread_setcancelstate(state, oldstate)....247 f_pthread_attr_t ...........215 f_pthread_setcanceltype(type, oldtype) ....248 f_pthread_cancel(thread) ........215 f_pthread_setconcurrency(new_level) ....249 f_pthread_cleanup_pop(exec) .......215 f_pthread_setschedparam(thread, policy, param) 249 f_pthread_cleanup_push(cleanup, flag, arg) . 216 f_pthread_setspecific(key, arg) .......250 f_pthread_cond_broadcast(cond) ......217 f_pthread_t .............251 f_pthread_cond_destroy(cond).......218 f_pthread_testcancel() .........251 f_pthread_cond_init(cond, cattr) ......218 f_sched_param ............251 f_pthread_cond_signal(cond) .......219 f_sched_yield() ............251 f_pthread_cond_t ...........219 f_timespec .............252 f_pthread_cond_timedwait(cond, mutex, timeout) ..............220 Chapter 8. Interlanguage calls ....253 f_pthread_cond_wait(cond, mutex) .....220 Conventions for XL Fortran external names . 253 f_pthread_condattr_destroy(cattr)......221 Mixed-language input and output ......254 f_pthread_condattr_getpshared(cattr, pshared) 221 Mixing Fortran and C++ .........254 f_pthread_condattr_init(cattr) .......222 Making calls to C functions work.......256 f_pthread_condattr_setpshared(cattr, pshared) 223 Passing data from one language to another . 257 f_pthread_condattr_t ..........223 Passing arguments between languages ....257 f_pthread_create(thread, attr, flag, ent, arg) . 224 Passing global variables between languages . 258 f_pthread_detach(thread) ........225 Passing character types between languages . 259 f_pthread_equal(thread1, thread2) .....226 Passing arrays between languages .....260 f_pthread_exit(ret) ...........226 Passing pointers between languages .....261 f_pthread_getconcurrency() ........227 Passing arguments by reference or by value . 261 f_pthread_getschedparam(thread, policy, param) 227 Passing COMPLEX values to/from gcc ....263 f_pthread_getspecific(key, arg).......228 Returning values from Fortran functions . 263 f_pthread_join(thread, ret) ........229 Arguments with the OPTIONAL attribute . 263 f_pthread_key_create(key, dtr) .......229 Assembler-level subroutine linkage conventions 264 f_pthread_key_delete(key) ........230 The stack ..............265 f_pthread_key_t ...........231 The Linkage Area and Minimum Stack Frame 266 f_pthread_kill(thread, sig) ........231 The input parameter area ........267 f_pthread_mutex_destroy(mutex) ......231 The register save area .........267 f_pthread_mutex_init(mutex, mattr) .....232 The local stack area ..........267 f_pthread_mutex_lock(mutex)
Recommended publications
  • Program Analysis and Optimization for Embedded Systems
    Program Analysis and Optimization for Embedded Systems Mike Jochen and Amie Souter jochen, souter ¡ @cis.udel.edu Computer and Information Sciences University of Delaware Newark, DE 19716 (302) 831-6339 1 Introduction ¢ have low cost A proliferation in use of embedded systems is giving cause ¢ have low power consumption for a rethinking of traditional methods and effects of pro- ¢ require as little physical space as possible gram optimization and how these methods and optimizations can be adapted for these highly specialized systems. This pa- ¢ meet rigid time constraints for computation completion per attempts to raise some of the issues unique to program These requirements place constraints on the underlying analysis and optimization for embedded system design and architecture’s design, which together affect compiler design to address some of the solutions that have been proposed to and program optimization techniques. Each of these crite- address these specialized issues. ria must be balanced against the other, as each will have an This paper is organized as follows: section 2 provides effect on the other (e.g. making a system smaller and faster pertinent background information on embedded systems, de- will typically increase its cost and power consumption). A lineating the special needs and problems inherent with em- typical embedded system, as illustrated in figure 1, consists bedded system design; section 3 addresses one such inherent of a processor core, a program ROM (Read Only Memory), problem, namely limited space for program code; section 4 RAM (Random Access Memory), and an ASIC (Applica- discusses current approaches and open issues for code min- tion Specific Integrated Circuit).
    [Show full text]
  • Stochastic Program Optimization by Eric Schkufza, Rahul Sharma, and Alex Aiken
    research highlights DOI:10.1145/2863701 Stochastic Program Optimization By Eric Schkufza, Rahul Sharma, and Alex Aiken Abstract Although the technique sacrifices completeness it pro- The optimization of short sequences of loop-free, fixed-point duces dramatic increases in the quality of the resulting code. assembly code sequences is an important problem in high- Figure 1 shows two versions of the Montgomery multiplica- performance computing. However, the competing constraints tion kernel used by the OpenSSL RSA encryption library. of transformation correctness and performance improve- Beginning from code compiled by llvm −O0 (116 lines, not ment often force even special purpose compilers to pro- shown), our prototype stochastic optimizer STOKE produces duce sub-optimal code. We show that by encoding these code (right) that is 16 lines shorter and 1.6 times faster than constraints as terms in a cost function, and using a Markov the code produced by gcc −O3 (left), and even slightly faster Chain Monte Carlo sampler to rapidly explore the space of than the expert handwritten assembly included in the all possible code sequences, we are able to generate aggres- OpenSSL repository. sively optimized versions of a given target code sequence. Beginning from binaries compiled by llvm −O0, we are able 2. RELATED WORK to produce provably correct code sequences that either Although techniques that preserve completeness are effec- match or outperform the code produced by gcc −O3, icc tive within certain domains, their general applicability −O3, and in some cases expert handwritten assembly. remains limited. The shortcomings are best highlighted in the context of the code sequence shown in Figure 1.
    [Show full text]
  • MTS on Wikipedia Snapshot Taken 9 January 2011
    MTS on Wikipedia Snapshot taken 9 January 2011 PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Sun, 09 Jan 2011 13:08:01 UTC Contents Articles Michigan Terminal System 1 MTS system architecture 17 IBM System/360 Model 67 40 MAD programming language 46 UBC PLUS 55 Micro DBMS 57 Bruce Arden 58 Bernard Galler 59 TSS/360 60 References Article Sources and Contributors 64 Image Sources, Licenses and Contributors 65 Article Licenses License 66 Michigan Terminal System 1 Michigan Terminal System The MTS welcome screen as seen through a 3270 terminal emulator. Company / developer University of Michigan and 7 other universities in the U.S., Canada, and the UK Programmed in various languages, mostly 360/370 Assembler Working state Historic Initial release 1967 Latest stable release 6.0 / 1988 (final) Available language(s) English Available programming Assembler, FORTRAN, PL/I, PLUS, ALGOL W, Pascal, C, LISP, SNOBOL4, COBOL, PL360, languages(s) MAD/I, GOM (Good Old Mad), APL, and many more Supported platforms IBM S/360-67, IBM S/370 and successors History of IBM mainframe operating systems On early mainframe computers: • GM OS & GM-NAA I/O 1955 • BESYS 1957 • UMES 1958 • SOS 1959 • IBSYS 1960 • CTSS 1961 On S/360 and successors: • BOS/360 1965 • TOS/360 1965 • TSS/360 1967 • MTS 1967 • ORVYL 1967 • MUSIC 1972 • MUSIC/SP 1985 • DOS/360 and successors 1966 • DOS/VS 1972 • DOS/VSE 1980s • VSE/SP late 1980s • VSE/ESA 1991 • z/VSE 2005 Michigan Terminal System 2 • OS/360 and successors
    [Show full text]
  • The Effect of Code Expanding Optimizations on Instruction Cache Design
    May 1991 UILU-EN G-91-2227 CRHC-91-17 Center for Reliable and High-Performance Computing THE EFFECT OF CODE EXPANDING OPTIMIZATIONS ON INSTRUCTION CACHE DESIGN William Y. Chen Pohua P. Chang Thomas M. Conte Wen-mei W. Hwu Coordinated Science Laboratory College of Engineering UNIVERSITY OF ILLINOIS AT URBANA-CHAMPAIGN Approved for Public Release. Distribution Unlimited. UNCLASSIFIED____________ SECURITY ¿LASSIPlOvriON OF t h is PAGE REPORT DOCUMENTATION PAGE 1a. REPORT SECURITY CLASSIFICATION 1b. RESTRICTIVE MARKINGS Unclassified None 2a. SECURITY CLASSIFICATION AUTHORITY 3 DISTRIBUTION/AVAILABILITY OF REPORT 2b. DECLASSIFICATION/DOWNGRADING SCHEDULE Approved for public release; distribution unlimited 4. PERFORMING ORGANIZATION REPORT NUMBER(S) 5. MONITORING ORGANIZATION REPORT NUMBER(S) UILU-ENG-91-2227 CRHC-91-17 6a. NAME OF PERFORMING ORGANIZATION 6b. OFFICE SYMBOL 7a. NAME OF MONITORING ORGANIZATION Coordinated Science Lab (If applicable) NCR, NSF, AMD, NASA University of Illinois N/A 6c ADDRESS (G'ty, Staff, and ZIP Code) 7b. ADDRESS (Oty, Staff, and ZIP Code) 1101 W. Springfield Avenue Dayton, OH 45420 Urbana, IL 61801 Washington DC 20550 Langley VA 20200 8a. NAME OF FUNDING/SPONSORING 8b. OFFICE SYMBOL ORGANIZATION 9. PROCUREMENT INSTRUMENT IDENTIFICATION NUMBER 7a (If applicable) N00014-91-J-1283 NASA NAG 1-613 8c. ADDRESS (City, State, and ZIP Cod*) 10. SOURCE OF FUNDING NUMBERS PROGRAM PROJECT t a sk WORK UNIT 7b ELEMENT NO. NO. NO. ACCESSION NO. The Effect of Code Expanding Optimizations on Instruction Cache Design 12. PERSONAL AUTHOR(S) Chen, William, Pohua Chang, Thomas Conte and Wen-Mei Hwu 13a. TYPE OF REPORT 13b. TIME COVERED 14. OATE OF REPORT (Year, Month, Day) Jl5.
    [Show full text]
  • SAS/ASSIST ® 9.1 the Correct Bibliographic Citation for This Manual Is As Follows: SAS Institute Inc
    Getting Started with SAS/ASSIST ® 9.1 The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2004. Getting Started with SAS/ASSIST ® 9.1. Cary, NC: SAS Institute Inc. Getting Started with SAS/ASSIST® 9.1 Copyright © 2004, SAS Institute Inc., Cary, NC, USA ISBN 1–59047–205–5 All rights reserved. Produced in the United States of America. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, or otherwise, without the prior written permission of the publisher, SAS Institute Inc. U.S. Government Restricted Rights Notice. Use, duplication, or disclosure of this software and related documentation by the U.S. government is subject to the Agreement with SAS Institute and the restrictions set forth in FAR 52.227–19, Commercial Computer Software-Restricted Rights (June 1987). SAS Institute Inc., SAS Campus Drive, Cary, North Carolina 27513. 1st printing, January 2004 SAS Publishing provides a complete selection of books and electronic products to help customers use SAS software to its fullest potential. For more information about our e-books, e-learning products, CDs, and hard-copy books, visit the SAS Publishing Web site at support.sas.com/pubs or call 1-800-727-3228. SAS® and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. IBM® and all other International Business Machines Corporation product or service names are registered trademarks or trademarks of International Business Machines Corporation in the USA and other countries.
    [Show full text]
  • NBS FORTRAN Test Programs 3^1 No "I Volume 1- Documentation for Versions 1 and 3 V.I
    j I i Vt NBS SPECIAL PUBLICATION 399 J Volume 1 U.S. DEPARTMENT OF COMMERCE / National Bureau of Standards] National Bureau of Standards Library, £-01 Admin. BIdg. ncT 1 1981 13102^1 NBS FORTRAN Test Prog Volume 1-Documentation for Versions 1 and 3 NATIONAL BUREAU OF STANDARDS The National Bureau of Standards^ was established by an act of Congress March 3, 1901. The Bureau's overall goal is to strengthen and advance the Nation's science and technology and facilitate their effective application for public benefit. To this end, the Bureau conducts research and provides: (1) a basis for the Nation's physical measurement system, (2) scientific and technological services for industry and government, (3) a technical basis for equity in trade, and (4) technical services to promote public safety. The Bureau consists of the Institute for Basic Standards, the Institute for Materials Research, the Institute for Applied Technology, the Institute for Computer Sciences and Technology, and the Office for Information Programs. THE INSTITUTE FOR BASIC STANDARI>S provides the central basis within the United States of a complete and consistent system of physical measurement; coordinates that system with measurement systems of other nations; and furnishes essential services leading to accurate and uniform physical measurements throughout the Nation's scientific community, industry, and commerce. The Institute consists of a Center for Radiation Research, an Office of Meas- urement Services and the following divisions: Applied Mathematics — Electricity — Mechanics
    [Show full text]
  • On the Need of Compilepretation for Legacy Languages
    On the Need of Compilepretation for Legacy Languages Vadim Zaytsev Raincode [email protected] Abstract handle it. The third family of reasons lies somewhere in be- The context of this work is the research and development tween: system elements could have been written in HLASM effort that went into creating a product called Raincode As- for optimisation purposes, to reduce program size, running sembler Compiler (Blagodarov et al. 2016), a reimplemen- time, memory footprint, implement very sophisticated er- tation of the IBM mainframe assembler language retargeted ror recovery strategies, fine-tune memory allocation. On the and replatformed for .NET Framework (ECMA-335 June grand scheme of things this may seem like a detail, but such 2012). The assembler language for IBM System/360 and details are what usually make grand schemes fall apart. In newer mainframes has existed and evolved since 1964 (Abel our case, such considerations demanded high efficiency and 1989; Carrano 1987; GC24-3414-7 1970; GC26-4943-06 productivity of our “compiler”. 2013; Kacmar 1988; McQuillen 1975; McQuillen and Prince Writing a language processor by the book seems to be 1987; O’Kane 2011; SA22-7832-09 2012; SC26-4940-06 straightforward (Grune et al. 2012): you parse the code, you 2013; SC26-4941-06 2013). The current version is called handle contexts and static semantics, you generate some in- High Level Assembler, or HLASM, and is widely accepted termediate representation, optimise it, generate code, opti- among mainframe developers and architects as a “second mise it and finally interpret it or let it be interpreted by the generation programming language”, thus positioning it be- target machine directly.
    [Show full text]
  • ARM Optimizing C/C++ Compiler V20.2.0.LTS User's Guide (Rev. V)
    ARM Optimizing C/C++ Compiler v20.2.0.LTS User's Guide Literature Number: SPNU151V January 1998–Revised February 2020 Contents Preface ........................................................................................................................................ 9 1 Introduction to the Software Development Tools.................................................................... 12 1.1 Software Development Tools Overview ................................................................................. 13 1.2 Compiler Interface.......................................................................................................... 15 1.3 ANSI/ISO Standard ........................................................................................................ 15 1.4 Output Files ................................................................................................................. 15 1.5 Utilities ....................................................................................................................... 16 2 Using the C/C++ Compiler ................................................................................................... 17 2.1 About the Compiler......................................................................................................... 18 2.2 Invoking the C/C++ Compiler ............................................................................................. 18 2.3 Changing the Compiler's Behavior with Options ......................................................................
    [Show full text]
  • Compiler Optimization-Space Exploration
    Journal of Instruction-Level Parallelism 7 (2005) 1-25 Submitted 10/04; published 2/05 Compiler Optimization-Space Exploration Spyridon Triantafyllis [email protected] Department of Computer Science Princeton University Princeton, NJ 08540 USA Manish Vachharajani [email protected] Department of Electrical and Computer Engineering University of Colorado at Boulder Boulder, CO 80309 USA David I. August [email protected] Department of Computer Science Princeton University Princeton, NJ 08540 USA Abstract To meet the performance demands of modern architectures, compilers incorporate an ever- increasing number of aggressive code transformations. Since most of these transformations are not universally beneficial, compilers traditionally control their application through predictive heuris- tics, which attempt to judge an optimization’s effect on final code quality a priori. However, com- plex target architectures and unpredictable optimization interactions severely limit the accuracy of these judgments, leading to performance degradation because of poor optimization decisions. This performance loss can be avoided through the iterative compilation approach, which ad- vocates exploring many optimization options and selecting the best one a posteriori. However, existing iterative compilation systems suffer from excessive compile times and narrow application domains. By overcoming these limitations, Optimization-Space Exploration (OSE) becomes the first iterative compilation technique suitable for general-purpose production compilers. OSE nar- rows down the space of optimization options explored through limited use of heuristics. A compiler tuning phase further limits the exploration space. At compile time, OSE prunes the remaining opti- mization configurations in the search space by exploiting feedback from earlier configurations tried. Finally, rather than measuring actual runtimes, OSE compares optimization outcomes through static performance estimation, further enhancing compilation speed.
    [Show full text]
  • YES/MVS: a Continuous Real Time Expert System
    From: AAAI-84 Proceedings. Copyright ©1984, AAAI (www.aaai.org). All rights reserved. YEWMVS: A Continuous Real Time Expert System J.H. Griesmer, S.J. Hong, M. Karnaugh, J.K. Kastner, M.I. Schor Expert Systems Group, Mathematical Science Department R.L. Ennis, D.A. Klein, K.R. Milliken, H.M. VanWoerkom Installation Management Group, Computer Science Department IBM T. J. Watson Research Center Yorktown Heights, NY 10598 ABSTRACT: as they arise. A long training period is required to produce a skilled operator; trained operators, in turn, are often pro- YES/MVS (Yorktown Expert System for MVS opera- moted to systems programmers. The resulting shortage of tors) is a continuous, real time expert system that exerts skilled operators and the increasing complexity of the op- interactive control over an operating system as an aid to erator’s job calls for more powerful installation manage- computer operators. This paper discusses the YES/MVS ment tools. We have chosen the management of a Multiple system, its domain of application, and issues that arise in Virtual Storage (MVS) operating system, the most widely the design and development of an expert system that runs used operating system on large IBM mainframe computers, continuously in real time. as an example of the application of expert systems to problems in computer installation management. I INTRODUCTION B. Use of Expert System Techniques Each installation has a different configuration and dif- ferent local policies for computer operations, both of which Expert systems techniques are beginning to be success- change over time. The software running in a large com- fully applied to real problems in industry, although only a puter installation represents hundreds of man-years of de- handful are reportedly in use so far.
    [Show full text]
  • XL Fortran: Getting Started
    IBM XL Fortran for AIX, V12.1 Getting Started with XL Fortran Ve r s i o n 12.1 GC23-8898-00 IBM XL Fortran for AIX, V12.1 Getting Started with XL Fortran Ve r s i o n 12.1 GC23-8898-00 Note Before using this information and the product it supports, read the information in “Notices” on page 29. First edition This edition applies to IBM XL Fortran for AIX, V12.1 (Program number 5724-U82) and to all subsequent releases and modifications until otherwise indicated in new editions. Make sure you are using the correct edition for the level of the product. © Copyright International Business Machines Corporation 1996, 2008. All rights reserved. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents About this document . .v Architecture and processor support . .12 Conventions . .v Performance and optimization . .13 Related information . .ix Other new or changed compiler options . .15 IBM XL Fortran information . .ix Standards and specifications . .x Chapter 3. Setting up and customizing Other IBM information. .xi XL Fortran . .17 Technical support . .xi Using custom compiler configuration files . .17 How to send your comments . .xi Chapter 4. Developing applications Chapter 1. Introducing XL Fortran . .1 with XL Fortran . .19 Commonality with other IBM compilers . .1 The compiler phases . .19 Hardware and operating system support . .1 Editing Fortran source files . .19 A highly configurable compiler . .1 Compiling with XL Fortran . .20 Language standards compliance . .2 Invoking the compiler . .22 Source-code migration and conformance checking 3 Compiling parallelized XL Fortran applications 22 Tools and utilities .
    [Show full text]
  • IBM Power Systems Compiler Strategy
    Software Group Compilation Technology IBM Power Systems Compiler Strategy Roch Archambault IBM Toronto Laboratory [email protected] ASCAC meeting | August 11, 2009 @ 2009 IBM Corporation Software Group Compilation Technology IBM Rational Disclaimer © Copyright IBM Corporation 2008. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service
    [Show full text]