Performance Counters and Tools Openpower Tutorial, Sc18, Dallas

Total Page:16

File Type:pdf, Size:1020Kb

Performance Counters and Tools Openpower Tutorial, Sc18, Dallas PERFORMANCE COUNTERS AND TOOLS OPENPOWER TUTORIAL, SC18, DALLAS 12 November 2018 Andreas Herten Forschungszentrum Jülich Member of the Helmholtz Association Outline Motivation Performance Counters Goals of this session Introduction General Description Get to know Performance Counters Counters on POWER9 Measure counters on POWER9 Measuring Counters ! Hands-on perf Additional material in appendix PAPI GPUs Conclusion Member of the Helmholtz Association 12 November 2018 Slide 1 18 Knuth […] premature optimization is the root of all evil. Yet we should not pass up our [optimization] op- portunities […] – Donald Knuth Full quote in appendix Optimization Measurement Making educated decisions Only optimize code after measuring its performance Measure! Don’t trust your gut! Programming Objectives Run time Cycles Operations per cycle (FLOP=s) Usage of architecture features ($, (S)MT, SIMD, …) Correlate measurements with code Measuring ! hot spots/performance limiters Iterative process Member of the Helmholtz Association 12 November 2018 Slide 3 18 Measurement Native Derived Two options for insight Software Coarse Timestamps to time program / parts of program Only good for first glimpse No insight to inner workings Detailed Performance counters to study usage of hardware architecture Instructions Flushs CPI, IPC Cycles Branches Floating point operations CPU migrations Stalled cycles … Cache misses, cache hits Prefetches Member of the Helmholtz Association 12 November 2018 Slide 4 18 Performance Counters Member of the Helmholtz Association 12 November 2018 Slide 5 18 Performance Monitoring Unit Right next to the core Part of processor periphery, but dedicated registers History First occurrence: Intel Pentium, reverse-engineered 1994 (RDPMC)[2] Originally for chip developers Later embraced for software developers and tuners Operation: Certain events counted at logic level, then aggregated to registers Pros Cons Low overhead Processor-specific Very specific requests possible; detailed Hard to measure information Limited amount of counter registers Information about CPU core, nest, cache, Compressed information content memory Member of the Helmholtz Association 12 November 2018 Slide 6 18 Working with Performance Counters Some caveats Mind the clock rates! Modern processors have dynamic clock rates (CPUs, GPUs) ! Might skew results Some counters might not run at nominal clock rate Limited counter registers POWER9: 6 registers for hardware counters (PMC1 - PMC6)[3] Cores, Threads (OpenMP) Absolutely possible Complicates things slightly Pinning necessary ! OMP_PROC_BIND, OMP_PLACES; PAPI_thread_init() Nodes (MPI): Counters independent of MPI, but aggregation tool useful (Score-P, …) Member of the Helmholtz Association 12 November 2018 Slide 7 18 Performance Counters on POWER9 Member of the Helmholtz Association 12 November 2018 Slide 8 18 POWER9 Compartments Sources of PMU events POWER9 Core-Level Nest-Level Core / thread level L3 cache, interconnect fabric, Core pipeline analysis memory channels Frontend Analysis of Branch prediction Main memory access Execution units Bandwidth … Behavior investigation Stalls Utilization … Member of the Helmholtz Association 12 November 2018 Slide 9 18 LWSYNC PM_CMPLU_STALL_LWSYNC Glossary HWSYNC BRU Branching Unit PM_CMPLU_STALL_HWSYNC CR Conditional Register ECC Delay FXU Fixed-Point Unit PM_CMPLU_STALL_MEM_ECC_DELAY Thread Blocked VSU Vector-Scalar Unit PM_CMPLU_STALL_THRD Other Thread’s Flush LSU Load-Store Unit PM_CMPLU_STALL_FLUSH LMQ Load Miss Queue COQ Full ERAT Effective to Real Address POWER9 Performance Counters PM_CMPLU_STALL_COQ_FULL Translation LWSYNC Lightweight Synchro- Other nize Branch HWSYNC Heavyweight Synchro- BR or CR PM_CMPLU_STALL_BRU nize PM_CMPLU_STALL_BRU_CRU CR ECC Error Correcting Code Group Waiting to Complete Fixed-Point Long Derived Quantity PM_NTCG_ALL_FIN Fixed-Point PM_CMPLU_STALL_FXLONG PM_CMPLU_STALL_FXU Instructions, Stalls Fixed-Point (Other) Stall due to… Vector Long Thread blocked due to… Vector PM_CMPLU_STALL_VECTOR_LONG PM_CMPLU_STALL_VECTOR Vector (other) Nothing to dispatch due to… Scalar Long VSU Scalar PM_CMPLU_STALL_SCALAR_LONG PM_CMPLU_ST ALL_VSU PM_CMPLU_STALL_SCALAR Scalar (other) Other Load-Hit-Store Stalled Cycles Next-to-Complete Flush Store Finish PM_CMPLU_STALL_REJECT_LHS PM_CMPLU_STALL PM_CMPLU_STALL_NTCG_FLUSH PM_CMPLU_STALL_STORE ERAT Miss LSU Reject PM_CMPLU_STALL_ERAT_MIS NOPs PM_CMPLU_STALL_REJECT PM_CMPLU_STALL_NO_NTF LMQ Full PM_CMPLU_STALL_REJ_LMQ_FULL Load Finish L2/L3 Hit PM_CMPLU_STALL_LOAD_FINISH Cycles LSU Other with Conflict PM_CMPLU_STALL_DMISS_L2L3_CONFLICT PM_RUN_CYC PM_CMPLU_STALL_LSU Store Forward L2/L3 Hit PM_CMPLU_STALL_ST_FWD L2/L3 Hit Other PM_CMPLU_STALL_DMISS_L2L3 Dcache Miss w/ No Conflict PM_CMPLU_STALL_OTHER_CMPL PM_CMPLU_STALL_DCACHE_MISS L3 Miss On-Chip L2/L3 PM_LD_MISS_L1 Load missed L1 cache Other PM_CMPLU_STALL_DMISS_L3MISS PM_CMPLU_STALL_DMISS_L21_L31 Run Instruction PM_RUN_INST_CMPL On-Chip Memory L3 Miss PM_CMPLU_STALL_DMISS_LMEM PM_GCT_NOSLOT_IC_L3MISS I-Cache Miss Off-Chip Memory Store: PM_ST_MISS_L1; Local L4 Hit: PM_DATA_FROM_LL4 PM_GCT_NOSLOT_IC_MISS PM_CMPLU_STALL_DMISS_REMOTE Other Branch Mispredict Off-Node Memory PM_GCT_NOSLOT_BR_MPRED Dispatch Held: Mapper Nothing to Dispatch Branch Mispredict PM_GCT_NOSLOT_DISP_HELD_MAP PM_GCT_NOSLOT_CYC and I-Cache Miss PM_GCT_NOSLOT_BR_MPRED_ICMISS Dispatch Held: Store Queue PM_GCT_NOSLOT_DISP_HELD_SRQ PM_INST_CMPL Instructions completed Dispatch Held Dispatch Held: Issue Queue PM_GCT_NOSLOT_DISP_HELD_ISSQ Other Other OTHER_CPI Dispatch Held: Other Also: PM_RUN_INST_CMPL PM_GCT_NOSLOT_DISP_HELD_OTHER PM_VECTOR_FLOP_CMPL Vector FP instruction completed Also: PM_2FLOP_CMPL POWER8 CPI Stack PM_RUN_CYC Total cycles run Processor cycles gated by the run latch PM_CMPLU_STALL Completion stall Cycles in which a thread did not complete any groups, but there were entries PM_CMPLU_STALL_THRD Completion stall due to thread conflict Completion stalled because the thread was blocked PM_CMPLU_STALL_BRU Stall due to BRU BRU: Branch Unit PM_CMPLU_STALL_LSU Completion stall by LSU instruction LSU: Load/Store Unit Member of the Helmholtz Association 12 November 2018 Slide 10 18 LWSYNC PM_CMPLU_STALL_LWSYNC Glossary HWSYNC BRU Branching Unit PM_CMPLU_STALL_HWSYNC CR Conditional Register ECC Delay FXU Fixed-Point Unit PM_CMPLU_STALL_MEM_ECC_DELAY Thread Blocked VSU Vector-Scalar Unit PM_CMPLU_STALL_THRD Other Thread’s Flush LSU Load-Store Unit PM_CMPLU_STALL_FLUSH LMQ Load Miss Queue COQ Full ERAT Effective to Real Address POWER9 Performance Counters PM_CMPLU_STALL_COQ_FULL Translation LWSYNC Lightweight Synchro- Other nize Branch HWSYNC Heavyweight Synchro- BR or CR PM_CMPLU_STALL_BRU nize PM_CMPLU_STALL_BRU_CRU CR ECC Error Correcting Code Group Waiting to Complete Fixed-Point Long Derived Quantity PM_NTCG_ALL_FIN Fixed-Point PM_CMPLU_STALL_FXLONG PM_CMPLU_STALL_FXU Instructions, Stalls Fixed-Point (Other) Stall due to… Vector Long Thread blocked due to… Vector PM_CMPLU_STALL_VECTOR_LONG PM_CMPLU_STALL_VECTOR Vector (other) Nothing to dispatch due to… Scalar Long VSU Scalar PM_CMPLU_STALL_SCALAR_LONG PM_CMPLU_ST ALL_VSU PM_CMPLU_STALL_SCALAR Scalar (other) Other Load-Hit-Store Stalled Cycles Next-to-Complete Flush Store Finish PM_CMPLU_STALL_REJECT_LHS PM_CMPLU_STALL PM_CMPLU_STALL_NTCG_FLUSH PM_CMPLU_STALL_STORE ERAT Miss LSU Reject PM_CMPLU_STALL_ERAT_MIS NOPs PM_CMPLU_STALL_REJECT PM_CMPLU_STALL_NO_NTF LMQ Full PM_CMPLU_STALL_REJ_LMQ_FULL Load Finish L2/L3 Hit PM_CMPLU_STALL_LOAD_FINISH Cycles LSU Other with Conflict PM_CMPLU_STALL_DMISS_L2L3_CONFLICT PM_RUN_CYC PM_CMPLU_STALL_LSU Store Forward L2/L3 Hit PM_CMPLU_STALL_ST_FWD L2/L3 Hit Other PM_CMPLU_STALL_DMISS_L2L3 Dcache Miss w/ No Conflict PM_CMPLU_STALL_OTHER_CMPL PM_CMPLU_STALL_DCACHE_MISS L3 Miss On-Chip L2/L3 PM_LD_MISS_L1 Load missed L1 cache Other PM_CMPLU_STALL_DMISS_L3MISS PM_CMPLU_STALL_DMISS_L21_L31 Run Instruction PM_RUN_INST_CMPL On-Chip Memory L3 Miss PM_CMPLU_STALL_DMISS_LMEM PM_GCT_NOSLOT_IC_L3MISS I-Cache Miss Off-Chip Memory Store: PM_ST_MISS_L1; Local L4 Hit: PM_DATA_FROM_LL4 PM_GCT_NOSLOT_IC_MISS PM_CMPLU_STALL_DMISS_REMOTE Other Branch Mispredict Off-Node Memory PM_GCT_NOSLOT_BR_MPRED Dispatch Held: Mapper Nothing to Dispatch Branch Mispredict PM_GCT_NOSLOT_DISP_HELD_MAP PM_GCT_NOSLOT_CYC and I-Cache Miss PM_GCT_NOSLOT_BR_MPRED_ICMISS Dispatch Held: Store Queue PM_GCT_NOSLOT_DISP_HELD_SRQ PM_INST_CMPL Instructions completed Dispatch Held Dispatch Held: Issue Queue PM_GCT_NOSLOT_DISP_HELD_ISSQ Other Other OTHER_CPI Dispatch Held: Other Also:NumberPM_RUN_INST_CMPL of counters for POWER9: PM_GCT_NOSLOT_DISP_HELD_OTHER PM_VECTOR_FLOP_CMPL Vector FP instruction completed Also: PM_2FLOP_CMPL POWER8 CPI Stack PM_RUN_CYC Total cycles run 959 Processor cycles gated by the run latch PM_CMPLU_STALL Completion stall Cycles in which a thread did not complete any groups, but there were entries PM_CMPLU_STALL_THRD Completion stallSee dueappendix to thread for more conflict on counters Completion stalled because the thread was blocked PM_CMPLU_STALL_BRU Stall due to BRU (CPI stack; resources) BRU: Branch Unit PM_CMPLU_STALL_LSU Completion stall by LSU instruction LSU: Load/Store Unit Member of the Helmholtz Association 12 November 2018 Slide 10 18 Measuring Counters Member of the Helmholtz Association 12 November 2018 Slide 11 18 Overview perf Linux’ tool (also called perf_events) PAPI C/C++ API Score-P Measurement environment (appendix) Likwid Set of command line utilities for detailed analysis perf_event_open() Linux
Recommended publications
  • Red Hat Enterprise Linux 6 Developer Guide
    Red Hat Enterprise Linux 6 Developer Guide An introduction to application development tools in Red Hat Enterprise Linux 6 Dave Brolley William Cohen Roland Grunberg Aldy Hernandez Karsten Hopp Jakub Jelinek Developer Guide Jeff Johnston Benjamin Kosnik Aleksander Kurtakov Chris Moller Phil Muldoon Andrew Overholt Charley Wang Kent Sebastian Red Hat Enterprise Linux 6 Developer Guide An introduction to application development tools in Red Hat Enterprise Linux 6 Edition 0 Author Dave Brolley [email protected] Author William Cohen [email protected] Author Roland Grunberg [email protected] Author Aldy Hernandez [email protected] Author Karsten Hopp [email protected] Author Jakub Jelinek [email protected] Author Jeff Johnston [email protected] Author Benjamin Kosnik [email protected] Author Aleksander Kurtakov [email protected] Author Chris Moller [email protected] Author Phil Muldoon [email protected] Author Andrew Overholt [email protected] Author Charley Wang [email protected] Author Kent Sebastian [email protected] Editor Don Domingo [email protected] Editor Jacquelynn East [email protected] Copyright © 2010 Red Hat, Inc. and others. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
    [Show full text]
  • IBM Energyscale for POWER8 Processor-Based Systems
    IBM EnergyScale for POWER8 Processor-Based Systems November 2015 Martha Broyles Christopher J. Cain Todd Rosedahl Guillermo J. Silva Table of Contents Executive Overview...................................................................................................................................4 EnergyScale Features.................................................................................................................................5 Power Trending................................................................................................................................................................5 Thermal Reporting...........................................................................................................................................................5 Fixed Maximum Frequency Mode...................................................................................................................................6 Static Power Saver Mode.................................................................................................................................................6 Fixed Frequency Override...............................................................................................................................................6 Dynamic Power Saver Mode...........................................................................................................................................7 Power Management's Effect on System Performance................................................................................................7
    [Show full text]
  • IBM POWER8 High-Performance Computing Guide: IBM Power System S822LC (8335-GTB) Edition
    Front cover IBM POWER8 High-Performance Computing Guide IBM Power System S822LC (8335-GTB) Edition Dino Quintero Joseph Apuzzo John Dunham Mauricio Faria de Oliveira Markus Hilger Desnes Augusto Nunes Rosario Wainer dos Santos Moschetta Alexander Pozdneev Redbooks International Technical Support Organization IBM POWER8 High-Performance Computing Guide: IBM Power System S822LC (8335-GTB) Edition May 2017 SG24-8371-00 Note: Before using this information and the product it supports, read the information in “Notices” on page ix. First Edition (May 2017) This edition applies to: IBM Platform LSF Standard 10.1.0.1 IBM XL Fortran v15.1.4 and v15.1.5 compilers IBM XLC/C++ v13.1.2 and v13.1.5 compilers IBM PE Developer Edition version 2.3 Red Hat Enterprise Linux (RHEL) 7.2 and 7.3 in little-endian mode © Copyright International Business Machines Corporation 2017. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . ix Trademarks . .x Preface . xi Authors. xi Now you can become a published author, too! . xiii Comments welcome. xiv Stay connected to IBM Redbooks . xiv Chapter 1. IBM Power System S822LC for HPC server overview . 1 1.1 IBM Power System S822LC for HPC server. 2 1.1.1 IBM POWER8 processor . 3 1.1.2 NVLink . 4 1.2 HPC system hardware components . 5 1.2.1 Login nodes . 6 1.2.2 Management nodes . 6 1.2.3 Compute nodes. 7 1.2.4 Compute racks . 7 1.2.5 High-performance interconnect.
    [Show full text]
  • IBM Power System S824L Technical Overview and Introduction
    Front cover IBM Power System S824L Technical Overview and Introduction Linux server built on OpenPOWER technologies Ready for scientific, Java, and Big Data & Analytics workloads Dual NVIDIA GPU accelerators supported Alexandre Bicas Caldeira YoungHoon Cho James Cruickshank Bartłomiej Grabowski Volker Haug Andrew Laidlaw Seulgi Yoppy Sung ibm.com/redbooks Redpaper International Technical Support Organization IBM Power System S824L Technical Overview and Introduction December 2014 REDP-5139-00 Note: Before using this information and the product it supports, read the information in “Notices” on page vii. First Edition (December 2014) This edition applies to IBM Power System S824L (8247-42L) servers. © Copyright International Business Machines Corporation 2014. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . vii Trademarks . viii Preface . ix Authors. ix Now you can become a published author, too! . .x Comments welcome. xi Stay connected to IBM Redbooks . xi Chapter 1. General description . 1 1.1 Power S824L server . 2 1.2 NVIDIA Tesla GPU Accelerators. 3 1.2.1 NVIDIA CUDA. 5 1.3 Operating environment . 5 1.4 Physical package . 6 1.5 Server features . 7 1.5.1 Server features for a Power S824L with a NVIDIA GPU. 7 1.5.2 Server features for a Power S824L without a GPU. 8 1.5.3 Minimum features . 8 1.5.4 Power supply features . 8 1.5.5 Processor module features . 9 1.5.6 Memory features . 9 1.6 PCIe slots . 10 1.7 Disk and media features .
    [Show full text]
  • The Little-Endian Openpower Software Development Environment
    The Little-Endian OpenPOWER Software Development Environment Dr. Michael Gschwind Senior Technical Staff Member & Senior Manager IBM Power Systems #OpenPOWERSummit Join the conversation at #OpenPOWERSummit 1 OpenPOWER ecosystem . Enable rich ecosystem of hardware vendors Linux LE Linux LE • Standardized hardware interfaces Common, open firmware interfaces QEMU . Open source system software stack • Data center operators rely on tuning SW stack PowerKVM • Enable server ODM vendors to create offerings Operating environment built on Linux and KVM Opal Firmware Power8 Join the conversation at #OpenPOWERSummit A New OpenPOWER Linux Environment . OpenPOWER is not traditional Power Linux with a new name • Significant discontinuity and fresh start new environment “ppc64le” . Firmware, Hypervisor, data layout, source code, ABI, APIs . What changes for application developers? • Byte order • New ABI • Vector programming API Join the conversation at #OpenPOWERSummit The New Byte Order Little-endian data format and programming interfaces . Simplify porting of applications previously locked to Intel x86 • Large-scale data center applications • Application source code dependences . Access data repositories storing binary data written by Intel x86 • In-storage data base formats • Data sharing with mobile devices . Simplify data sharing with I/O devices originally from LE ecosystems • Easily exploit I/O and accelerators designed for PCs and mobile devices Join the conversation at #OpenPOWERSummit The New OpenPOWER Application Binary Interface (ABI)
    [Show full text]
  • XL C/C++: Installation Guide About This Information
    IBM XL C/C++ for Blue Gene/Q, V12.1 Installation Guide Ve r s i o n 12 .1 GC14-7362-00 IBM XL C/C++ for Blue Gene/Q, V12.1 Installation Guide Ve r s i o n 12 .1 GC14-7362-00 Note Before using this information and the product it supports, read the information in “Notices” on page 41. First edition This edition applies to IBM XL C/C++ for Blue Gene/Q, V12.1 (Program 5799-AG1) 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 2003, 2012. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents About this information ........v Chapter 5. Configuring IBM XL C/C++ Who should read this document........v for Blue Gene/Q, V12.1 (for advanced How to use this document..........v users) ...............23 How this document is organized .......vi Running the new_install utility .......24 Conventions ..............vi Running the vac_configure utility directly ....24 Related information ............ix vac_configure options..........25 IBM XL C/C++ information ........x Standards and specifications ........xi Chapter 6. After installing IBM XL Other IBM information..........xi Other information ...........xii C/C++ for Blue Gene/Q, V12.1 .....29 Technical support ............xii Testing the installation...........29 How to send your comments ........xii Enabling the man pages ..........30 Enabling the error messages .........31 Chapter
    [Show full text]
  • Novell SUSE LINUX Enterprise Server 8 on Powerpc
    BEAWebLogic Platform™ 8.1 Supported Configurations: Novell SUSE LINUX Enterprise Server 8 on PowerPC Version 8.1 Date: March 3, 2005 Copyright Copyright © 2005 BEA Systems, Inc. All Rights Reserved. Restricted Rights Legend This software and documentation is subject to and made available only pursuant to the terms of the BEA Systems License Agreement and may be used or copied only in accordance with the terms of that agreement. It is against the law to copy the software except as specifically allowed in the agreement. This document may not, in whole or in part, be copied, photocopied, reproduced, translated, or reduced to any electronic medium or machine readable form without prior consent, in writing, from BEA Systems, Inc. Use, duplication or disclosure by the U.S. Government is subject to restrictions set forth in the BEA Systems License Agreement and in subparagraph (c)(1) of the Commercial Computer Software-Restricted Rights Clause at FAR 52.227-19; subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013, subparagraph (d) of the Commercial Computer Software--Licensing clause at NASA FAR supplement 16-52.227-86; or their equivalent. Information in this document is subject to change without notice and does not represent a commitment on the part of BEA Systems. THE SOFTWARE AND DOCUMENTATION ARE PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. FURTHER, BEA Systems DOES NOT WARRANT, GUARANTEE, OR MAKE ANY REPRESENTATIONS REGARDING THE USE, OR THE RESULTS OF THE USE, OF THE SOFTWARE OR WRITTEN MATERIAL IN TERMS OF CORRECTNESS, ACCURACY, RELIABILITY, OR OTHERWISE.
    [Show full text]
  • The Seven Second Kernel Compile Anton Blanchard
    The seven second kernel compile Anton Blanchard IBM OzLabs Linux Technology Center, <[email protected]> Copyright (c) 2002 Anton Blanchard. Verbatim copying, distribution and translation of this entire article is permitted in any medium, provided this copyright notice and copying permission statement are preserved. Kernel hackers like to optimise for the common case, and what could be more common to them than compiling kernels. Timing a kernel compile is often a useful (if somewhat unscientific) metric when making Linux kernel changes. It has been used more recently to identify scalability problems - thus began the kernel compile benchmark wars. This paper looks at the work required to achieve a seven second kernel compile using the 2.5 Linux kernel on a 32 way PowerPC64 machine as well as the ongoing scalability work to go below seven seconds on this important benchmark (this is a preliminary version, the final version for the Congress may still suffer some changes. The Editors). Table of Contents 1. Introduction ................................................................................... 1 2. Let the wars begin ............................................................................. 1 3. Benchmark Hardware .......................................................................... 2 3.1. POWER4 architecture ................................................................... 2 3.2. Logical Partitioning ..................................................................... 2 4. The PowerPC64 empire strikes back ............................................................
    [Show full text]
  • Powerpc64 Architecture Support in Freebsd Ports
    powerpc64 architecture support in FreeBSD ports Piotr Kubaj, Bsc 1. Abstract code and solving issues related to the old toolchain that the operating system uses. IBM POWER processors are 64-bit CPU’s Keywords: freebsd, powerpc64, ibm power, designed primarily for server market. With ports, endianness, big endian, little endian. POWER9, there has been renewed interest in them, due to the use of open-source firmware and focus on security and control of the hardware. 2. Introduction There are also new desktop boards with POWER9. Because of that, support for them has 2.1. POWER architecture been recently greatly improved in FreeBSD with increased driver compatibility and more 3rd party This paper describes the effort for running software having available. For my project, I build FreeBSD ports on powerpc64 architecture. IBM the whole ports tree using Poudriere and fix the POWER are 64-bit RISC processors designed compilation errors I meet. In this paper, I specify specifically for the server market, although there challenges met during porting software to work are also boards for desktops and workstations on POWER processors on FreeBSD and show using those processors. how most problems can be solved. FreeBSD on POWER architecture runs in big-endian variant Before POWER9, last POWER processors only and uses old toolchain – with GCC 4.2 and released for desktop computers, were PowerPC binutils 2.17. This is why many problems are 970MP (based on POWER4) available in Apple related to fixing bugs in big-endian variants of PowerMacs G5.1 With the release of POWER9, there appeared new Macintoshes, can only run in big-endian mode desktop computers with POWER processors, (there are some older POWER CPU’s able to run making this architecture again interesting for little-endian mode but they are not common).
    [Show full text]
  • IBM System P5 570 Technical Overview and Introduction
    Front cover IBM System p5 570 Technical Overview and Introduction Finer system granulation using Micro-Partitioning technology to help lower TCO Modular midrange solution for managing On Demand Business New POWER5+ processor options using DDR2 memory technology Giuliano Anselmi Gregor Linzmeier Wolfgang Seiwald Philippe Vandamme Scott Vetter ibm.com/redbooks Redpaper International Technical Support Organization IBM System p5 570 Technical Overview and Introduction September 2006 Note: Before using this information and the product it supports, read the information in “Notices” on page vii. Second Edition (September 2006) This edition applies to the IBM System p5 570 (9117-570) and AIX 5L™ Version 5.3, product number 5765-G03. © Copyright International Business Machines Corporation 2004, 2006. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . vii Trademarks . viii Preface . ix The team that wrote this Redpaper . ix Become a published author . .x Comments welcome. .x Chapter 1. General description . 1 1.1 System specifications . 3 1.2 Physical package . 3 1.3 Minimum and optional features . 4 1.3.1 Processor card features . 5 1.3.2 Memory features . 6 1.3.3 Disk and media features . 6 1.3.4 USB diskette drive . 7 1.3.5 I/O drawers . 7 1.3.6 Hardware Management Console models . 10 1.4 System racks. 11 1.4.1 IBM 7014 Model T00 rack. 11 1.4.2 IBM 7014 Model T42 rack. 12 1.4.3 The ac power distribution unit and rack content .
    [Show full text]
  • The Gnu Binary Utilities (GNU Binutils) Version 2.37
    The gnu Binary Utilities (GNU Binutils) Version 2.37 July 2021 Roland H. Pesch Jeffrey M. Osier Cygnus Support Cygnus Support Texinfo 2019-09-20.22 Copyright c 1991-2021 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled \GNU Free Documentation License". i Table of Contents 1 ar ::::::::::::::::::::::::::::::::::::::::::::::::: 1 1.1 Controlling ar on the Command Line ::::::::::::::::::::::::::: 2 1.2 Controlling ar with a Script :::::::::::::::::::::::::::::::::::: 6 2 ld ::::::::::::::::::::::::::::::::::::::::::::::::: 9 3 nm::::::::::::::::::::::::::::::::::::::::::::::: 10 4 objcopy ::::::::::::::::::::::::::::::::::::::::: 16 5 objdump :::::::::::::::::::::::::::::::::::::::: 32 6 ranlib:::::::::::::::::::::::::::::::::::::::::::: 47 7 size :::::::::::::::::::::::::::::::::::::::::::::: 48 8 strings::::::::::::::::::::::::::::::::::::::::::: 50 9 strip ::::::::::::::::::::::::::::::::::::::::::::: 52 10 c++filt::::::::::::::::::::::::::::::::::::::::: 57 11 addr2line :::::::::::::::::::::::::::::::::::::: 60 12 windmc :::::::::::::::::::::::::::::::::::::::: 63 13 windres :::::::::::::::::::::::::::::::::::::::: 66 14 dlltool:::::::::::::::::::::::::::::::::::::::::: 69 14.1 The format of the dlltool .def file ::::::::::::::::::::::::::
    [Show full text]
  • Linux Day 2014 Milano Gnu/Linux Powerpc Notebook
    BUILD WITH US THE FIRST PowerPC OPEN SOURCE NOTEBOOK Who are we? ● We define ourselves as a Solidarity/Ethical/Passion driven community attorno a questo progetto e al Free Software e Hardware ● We are even a Tecnlogical Ethical Purchasing Group, in order to gather funds, design most of our laptop and run GNU/Linux on it ● We promote a Positive and Humane relationship between collaborators Ready to switch to GNU/Linux PowerPC notebooks WHY TODAY IS POSSIBLE? The World is changed ● The game has changed, now GNU/Linux is everywhere running on every CPU architectures and devices ● It's the right time to make new choices, a new PowerPC Notebook designed around GNU/Linux, make it happen! The Streeght of Relationships ● Mettendo relazione diretta con ogni persona che si è iscritta lalla newsletter del nostro sito, è nata una relazione umana di collaborazione. ● After 1 year from we have met the first interested to the project, today contribute to our project many peoples from different countries. ● Now we have 320 subscribers to our newsletter ● 120 collaborations and suggestions surveys compiled ● 50 collaborators (translation, software, etc) ● Our website is localized in 7 languages and we a forum http://www.powerpc-notebook.org Website 7 Languages: English – French – Spanish – German – Poland – Portuguese - Italian http://forum.powerpc-notebook.org/ Actions Done ● Direct single and group relationship with all the potential collaborators ● Website localization in 7 languages ● forum/website management ● Periodic Newsletter ● Searching of Chassis
    [Show full text]