Testing Memory Consistency of Shared-Memory Multiprocessors

Total Page:16

File Type:pdf, Size:1020Kb

Testing Memory Consistency of Shared-Memory Multiprocessors TESTING MEMORY CONSISTENCY OF SHARED-MEMORY MULTIPROCESSORS A DISSERTATION SUBMITTED TO THE DEPARTMENT OF ELECTRICAL ENGINEERING AND THE COMMITTEE ON GRADUATE STUDIES OF STANFORD UNIVERSITY IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY Chaiyasit Manovit June 2006 c Copyright by Chaiyasit Manovit 2006 All Rights Reserved ii Abstract Shared-memory multiprocessors are becoming the dominant architecture for single- chip and multi-chip microprocessor based systems. Shared memory architectures are difficult to design because they must correctly implement the complexity of cache co- herence and a memory consistency model. Memory consistency is a contract between hardware and software that specifies how memory behaves with respect to read and write operations from multiple processors. We address the challenge of correctly implementing a memory consistency model by developing a methodology for testing shared-memory multiprocessors which is com- posed of three steps: generating pseudo-random multithreaded programs, executing these programs on a system under test, and checking their compliance with the given memory consistency model. Although the last step is known to be an NP-complete problem, we develop a suite of novel algorithms that work efficiently in practice. Us- ing these algorithms, our methodology has found hundreds of bugs during design and verification of several commercial-graded processors. Many of these bugs are subtle and could not have been detected otherwise. We also successfully apply our methodology to transactional memory, an emerging architecture that can significantly improve programmability while preserving or even enhancing efficiency of the memory system. v vi Acknowledgments First and foremost, I would like to thank all my dissertation committee members, Oyekunle Olukotun, Giovanni De Micheli, and Robert Cypher, all of whom are truly great advisers and mentors. Without the generous support from Giovanni De Micheli, my Ph.D. pursuit may not have even started. His optimism also encouraged me to welcome changes when my research interest began to shift, which resulted in my joining Sun Microsystems and switching to Olukotun’s group. At Sun, I am grateful to Robert Cypher for his exceptional expertise and the inspiration which saw me navigate through the research in verifying memory consistency and related concepts. Oyekunle Olukotun helped connect my work to a trendy research topic, and it is with his vision and support that I was eventually able to reach this final milestone. I would also like to thank Bernard Widrow who graciously served as my orals com- mittee chairman. The team at Sun were also a great source of support. Sudheendra Hangal was practically my fourth adviser, with many interesting questions and ideas often bounc- ing between us. In particular, the following people have made Sun one of my best experiences: Durgam Vahia, Sridhar Narayanan, Gopal Reddy, Aleksandr Gert, and Juin-Yeu Joseph Lu. With De Micheli’s group, I received financial support from Stanford’s Electri- cal Engineering Department, the Microelectronics Advanced Research Corporation (MARCO), and the National Science Foundation (NSF). I am thankful for the guidance from many of his former students, especially Jim Smith, Luca Benini, Tajana Simunic, and Yung-Hsiang Lu. I also enjoyed the friendships with other vii group members and visitors, particularly Armita Peymandoust, Terry Tao Ye, Luc Semeria, Eui-Young Chung, Davide Bertozzi, and Srinivasan Murali. The following people helped improve the quality of this thesis one way or an- other: Christoforos Kozyrakis, Hassan Chafi, Austen McDonald, John Davis, and David Lande. I am also appreciative for the administrative support from Kathleen DiTommaso, Evelyn Ubhoff, and Darlene Hadding. Finally, I would like to thank my friends and family for fulfilling my life outside school and work, with special thanks to my parents for their constant enthusiasm in providing me as best an education as they could. viii Contents Abstract v Acknowledgments vii 1 Introduction 1 1.1Motivation................................. 1 1.1.1 Shared-MemoryMultiprocessors................. 1 1.1.2 MemoryConsistencyModels................... 2 1.1.3 VerifyingShared-MemoryMultiprocessors........... 3 1.2ThesisContributions........................... 4 1.3ThesisOrganization............................ 5 2 Memory Consistency Models 7 2.1SequentialConsistency.......................... 8 2.2SpecificationofSequentialConsistency................. 11 2.2.1 MemoryOperations........................ 11 2.2.2 Orders............................... 11 2.2.3 Axioms.............................. 12 2.3RelaxingSequentialConsistency..................... 13 2.3.1 RelaxingtheWriteAtomicity.................. 14 2.3.2 RelaxingtheProgramOrder................... 15 2.3.3 RelaxingtheValueSemantics.................. 16 2.4SpecificationsofRelaxedMemoryModels................ 17 2.4.1 TotalStoreOrder(TSO)..................... 17 ix 2.4.2 ProcessorConsistency(PC)................... 19 2.4.3 RelaxedMemoryOrder(RMO)................. 22 2.4.4 OtherRelaxedMemoryModels................. 24 2.5RelatedWork............................... 25 3 TSOtool: A Testing Methodology 26 3.1OverviewofTSOtool........................... 27 3.2TSOtoolOperation............................ 28 3.2.1 TestGeneration.......................... 29 3.2.2 TestRun............................. 31 3.2.3 Analysis.............................. 32 3.2.4 Debug............................... 33 3.3RelatedWork............................... 34 4 Algorithms for Verifying Memory Consistency 36 4.1TheProblems............................... 37 4.1.1 TheVTSOProblem....................... 39 4.1.2 TheVTSO-readProblem..................... 40 4.1.3 TheVTSO-conflictProblem................... 41 4.2BaselineAlgorithms............................ 41 4.2.1 AlgorithmforVTSO-conflict................... 42 4.2.2 BaselineAlgorithmforVTSO-read............... 45 4.2.3 VTSO-readExample....................... 46 4.3OptimizationsforVTSO-read...................... 48 4.3.1 VectorClocks........................... 48 4.3.2 Transitivity............................ 51 4.3.3 OptimizedBaselineAlgorithmforVTSO-read......... 52 4.4IncompletenessofBaselineAlgorithmforVTSO-read......... 54 4.5CompleteAlgorithmforVTSO-read................... 57 4.5.1 Heuristic for Topological Sort (Heu) .............. 57 4.5.2 Deriving Edges During Topological Sort (Deriv)........ 58 4.5.3 Backtracking (Heu+Back, Deriv+Back) ............ 59 x 4.6CharacterizationofAlgorithmsforVTSO-read............. 60 4.7RelatedWork............................... 65 5 Transactional Memory 67 5.1MotivationforTransactionalMemory.................. 67 5.2FlavorsofTransactionalMemory.................... 68 5.3FormalSpecificationofTransactionalMemory............. 71 5.4TransactionalMemoryVerification................... 74 5.4.1 TestGeneration.......................... 74 5.4.2 Analysis.............................. 75 5.4.3 AnalysisAlgorithms....................... 76 5.4.4 Example.............................. 79 5.4.5 CharacterizationofAlgorithmsforVTM-read......... 79 5.5RelatedWork............................... 83 6Results 85 6.1TestingTSOImplementations...................... 85 6.2TestingTMImplementations...................... 91 6.3Summary................................. 95 7 Conclusions and Future Work 96 7.1ThesisSummary............................. 97 7.2FutureDirections............................. 98 A Equivalence of Definitions of the Atomicity Axiom 100 Bibliography 102 xi List of Tables 4.1AsummaryofcomplexitiesofVSCproblems.............. 38 4.2 Baseline analysis time and slowdown ratio of Deriv+Back. ...... 64 6.1ClassificationofbugsfoundbyTSOtoolonvariousprocessors..... 86 6.2BugsfoundbyTSOtoolinvariousfunctionalareas........... 87 xii List of Figures 1.1 A programmer’s model of a simple shared-memory multiprocessor. 2 2.1AconceptualmodelofSequentialConsistency(SC)........... 9 2.2Examplesofexecutionresults....................... 10 2.3ExamplesofrelaxingtheSCrequirements................ 15 2.4AconceptualmodelofTotalStoreOrder(TSO)............ 18 2.5AconceptualmodelofProcessorConsistency(PC)........... 20 3.1TSOtoolusageflow............................ 28 4.1Anexecutionresultexample........................ 37 4.2BaselinealgorithmforVTSO-read.................... 47 4.3AnexecutionresultwhichviolatesTSO................. 49 4.4Vectorclocksexample........................... 50 4.5 Optimized baseline algorithm for VTSO-read (rules R6 and R7). 53 4.6Examplesofincompleteness........................ 56 4.7 Effectiveness of Heu and Deriv in finding valid TOO’s. ........ 62 4.8 Analysis time of Baseline and Deriv+Back forVTSO-read....... 63 5.1Producer-consumerexample........................ 80 5.2 Analysis time of Deriv+Back and its slowdown ratio for VTM-read. 82 6.1ExamplesofUltraSPARCbugsfoundbyTSOtool........... 89 6.2 Importance of the Atomicity enforcement. ............... 91 6.3ExamplesofTCCbugsfoundbyTSOtool................ 93 xiii xiv Chapter 1 Introduction 1.1 Motivation Although microprocessor performance has been growing at an exponential rate as suggested by Moore’s law, there is always demand for large computing capacity be- yond what can readily be provided by a single processor, even the most advanced one, hence a need for multiprocessor systems. Furthermore, striving to achieve ever higher performance, the industry has now turned more toward dual-core or multi- core designs as these are proving to be a better way to utilize
Recommended publications
  • Avionics Hardware Issues 2010/11/19 Chih-Hao Sun Avionics Software--Hardware Issue -History
    Avionics Hardware Issues 2010/11/19 Chih-hao Sun Avionics Software--Hardware Issue -History -HW Concepts History -FPGA vs ASIC The Gyroscope, the first auto-pilot device, was -Issues on • Avionics Computer introduced a decade after the Wright Brothers -Avionics (1910s) Computer -PowerPC • holds the plane level automatically -Examples -Energy Issue • is connected to computers for missions(B-17 and - Certification B-29 bombers) and Verification • German V-2 rocket(WWII) used the earliest automatic computer control system (automatic gyro control) • contains two free gyroscopes (a horizontal and a vertical) 2 Avionics Software--Hardware Issue -History -HW Concepts History -FPGA vs ASIC Avro Canada CF-105 Arrow fighter (1958) first used -Issues on • Avionics Computer analog computer to improve flyability -Avionics Computer is used to reduce tendency to yaw back and forth -PowerPC • -Examples F-16 (1970s) was the first operational jet fighter to use a -Energy Issue • fully-automatic analog flight control system (FLCS) - Certification and Verification • the rudder pedals and joysticks are connected to “Fly-by-wire” control system, and the system adjusts controls to maintain planes • contains three computers (for redundancy) 3 Avionics Software--Hardware Issue -History -HW Concepts History -FPGA vs ASIC NASA modified Navy F-8 with digital fly-by wire system in -Issues on • Avionics Computer 1972. -Avionics Computer • MD-11(1970s) was the first commercial aircraft to adopt -PowerPC computer-assisted flight control -Examples -Energy Issue The Airbus A320 series, late 1980s, used the first fully-digital - • Certification fly-by-wire controls in a commercial airliner and Verification • incorporates “flight envelope protection” • calculates that flight envelope (and adds a margin of safety) and uses this information to stop pilots from making aircraft outside that flight envelope.
    [Show full text]
  • CS 6290 Chapter 1
    Spring 2011 Prof. Hyesoon Kim Xbox 360 System Architecture, „Anderews, Baker • 3 CPU cores – 4-way SIMD vector units – 8-way 1MB L2 cache (3.2 GHz) – 2 way SMT • 48 unified shaders • 3D graphics units • 512-Mbyte DRAM main memory • FSB (Front-side bus): 5.4 Gbps/pin/s (16 pins) • 10.8 Gbyte/s read and write • Xbox 360: Big endian • Windows: Little endian http://msdn.microsoft.com/en-us/library/cc308005(VS.85).aspx • L2 cache : – Greedy allocation algorithm – Different workloads have different working set sizes • 2-way 32 Kbyte L1 I-cache • 4-way 32 Kbyte L1 data cache • Write through, no write allocation • Cache block size :128B (high spatial locality) • 2-way SMT, • 2 insts/cycle, • In-order issue • Separate vector/scalar issue queue (VIQ) Vector Vector Execution Unit Instructions Scalar Scalar Execution Unit • First game console by Microsoft, released in 2001, $299 Glorified PC – 733 Mhz x86 Intel CPU, 64MB DRAM, NVIDIA GPU (graphics) – Ran modified version of Windows OS – ~25 million sold • XBox 360 – Second generation, released in 2005, $299-$399 – All-new custom hardware – 3.2 Ghz PowerPC IBM processor (custom design for XBox 360) – ATI graphics chip (custom design for XBox 360) – 34+ million sold (as of 2009) • Design principles of XBox 360 [Andrews & Baker] - Value for 5-7 years -!ig performance increase over last generation - Support anti-aliased high-definition video (720*1280*4 @ 30+ fps) - extremely high pixel fill rate (goal: 100+ million pixels/s) - Flexible to suit dynamic range of games - balance hardware, homogenous resources - Programmability (easy to program) Slide is from http://www.cis.upenn.edu/~cis501/lectures/12_xbox.pdf • Code name of Xbox 360‟s core • Shared cell (playstation processor) ‟s design philosophy.
    [Show full text]
  • Boisvert-Storey-Sony Case Brief
    Storey C204 Summer 2014 Case Study BE MOVED SITUATION Sony Corporation is a 68-year old multinational based in Tokyo. In 2012, the tech giant employed 173,000 people, with corporate headquarters in Japan, Europe, and America. In May 2014, the company was down to 146,300, cutting 26,700 as part of CEO Kaz Hirai’s “One Sony” plan. Recently, the firm eVen sold former office buildings in Tokyo for $156 million (Inagaki). This followed a similar $1.2 billion sale in 2013. After seVeral years of losses, Sony’s situation appears critical. In the last fiscal year, the company lost $1.25 billion. EVen the gaming diVision, where the Playstation console family (PS2, PS3, PS4) is projected to sell 17 million units this year, lost $78 million (Quarterly Results). There are many causes: Sony’s jettisoning of its PC brand Vaio, the poor performance and planned spinoff of Sony’s teleVision diVision, PS4 launch and marketing costs, the struggling PSVita, R&D costs for Sony’s Project Morpheus, and the fluctuation of exchange rate markets. For the current year, Sony is projecting a $489 million loss. How sustainable is Sony’s current business model? Will the success of the PS4 lead to renewed profitability for the games diVision and the company as a whole? Perhaps opportunities in new markets can spark a turn-around. The company’s core businesses are electronic entertainment (Sony Computer Entertainment, Sony Music Entertainment, and Sony Pictures Entertainment) and hardware (Sony Mobile Communications and Sony Electronics). Though it also dabbles in financial serVices, publishing, and medical imaging, electronics represents roughly two-thirds of the corporation’s reVenue (Sony Annual Report 2011, 2013).
    [Show full text]
  • Architecture of Hyper-Threading on Intel Xenon Processor
    International Journal of Advanced Research in Electronics and Communication Engineering (IJARECE) Volume 4, Issue 4, April 2015 Architecture of Hyper-Threading on Intel Xenon Processor L.Jyothsna, IV/IV B.Tech, Dept. of Electronics and Computer Dr. K. Kiran kumar, Professor, Dept. of Electronics and Computer Abstract— Over the years, the computer architects were processor architecture. This performance is increased based on continuously devising new hard ware technologies to the number of instructions. That is when we increase the improve the system performance and to compete with the number of instructions the clock frequencies increased and advancements in software. Simultaneous Multithreading executed each second. Due to far more instructions in a super Technology (SMT) was one of the techniques where pipelining, micro architecture which manages the events that multiple threads can be simultaneously executed by a wrap the pipelining such as cache misses and interrupts. single processor without doing a context switch. Hyper- Threading, the Intel’s way of providing Simultaneous A. Hyper threading Technology Architecture: Multithreading Technology, adds a virtual thread along the side of a physical thread to increase the processing Normally a CPU can execute one instruction at a time by power of a processor. This paper combines the concepts of maintaining a single instruction pointer . And the processor can architecture of hyper-threading and its implementation on execute multiple threads by switching between the threads. In Intel’s xenon processor. The experimentation is done on Simultaneous Multithreading Technology (SMT), a single processor could simultaneously execute multiple threads Intel’s enterprise product line with wide variety of without context switching [7].
    [Show full text]
  • Packet #17 Imagine You Are Working on a Research Paper About the Effects of Playing Video Games. Read the Three Information Sour
    Packet #17 Imagine you are working on a research paper about the effects of playing video games. Read the three information sources that follow this page and keep the CAARP model in mind as you review each source. Remember: C = Currency A = Authority A = Accuracy R = Relevance P = Purpose For the third and final source you will see the address (URL) of a website. Click on that link to be taken to a website. Please review the website as a whole for your third and final source. To complete your assignment, go to: http://library.uncw.edu/instruction/UNI_library_assignment. Login at the bottom of the page and follow the directions to answer questions about each information source. Computers in Human Behavior 27 (2011) 770–775 Contents lists available at ScienceDirect Computers in Human Behavior journal homepage: www.elsevier.com/locate/comphumbeh Call of (civic) duty: Action games and civic behavior in a large sample of youth ⇑ Christopher J. Ferguson , Adolfo Garza Texas A&M International University, United States article info abstract Article history: The positive and negative influences of violent/action games, henceforth called ‘‘action games’’, remains Available online 23 November 2010 controversial in the scholarly literature. Although debate continues whether action games influence aggressive behavior, little research has examined the influence of action games on civic engagement. Keywords: The current study addresses this gap by examining the correlation between exposure to action games Computer games on civic engagement and on-line prosocial behavior in a sample of 873 teenagers. Results indicated that Prosocial behavior girls as well as teens who had parents who were more technologically savvy tended to engage in more Civic engagement civic behaviors.
    [Show full text]
  • Texture Compression in Real-Time Using the GPU
    Texture Compression in Real-Time Using the GPU Jason Tranchida Senior Programmer THQ | Volition Inc. Agenda • Why would I want to use the GPU? • DXT1/BC1 Primer • How do we do it? • Platform tricks • Make it fast! Prior Work Real-Time DXT Compression J.M.P. van Waveren Intel Software Network, October 2006 http://www.intel.com/cd/ids/developer/asmo-na/eng/324337.htm FastDXT Luc Renambot http://www.evl.uic.edu/cavern/fastdxt/ Why Use The GPU • Games are using more run-time generated content • Blended Maps • Dynamic Cube Maps • User generated content • CPU compression is slower • CPU compression requires extra synchronization & lag Performance Megapixel/Sec PS3 GPU Xbox 360 GPU Xenon 3.0 ghz (4 core) Xenon 3.0 ghz (1 core) 0 200 400 600 800 1000 1200 1400 1600 1800 * CPU Performance Numbers from Real-Time DXT Compression Paper DXT1/BC1 Primer • 64bit block representing 4x4 texels • 4 color values, 2 stored, 2 interpolated Color Indices R: 179 • Index 00 = color_0 G: 191 B: 17 R: 42 • Index 01 = color_1 G: 166 B: 159 R: 133 • Index 10 = 2/3 * color_0 + 1/3 * color_1 G: 182 B: 64 R: 87 • Index 11 = 1/3 * color_0 + 2/3 * color_1 G: 174 B: 111 • Note: if color_1 C> color 0 then • Index 10 = ½ color_0 + ½ color_1 Index 11 = “Transparent” Basic DXT Compression • Get a 4x4 grid of texels • Find the colors that you would like to use as the stored colors • Match each of the 4x4 texels to the best fitting color • Create binary representation of block • Get the results into a texture Getting Results • Method varies per-platform • Render target should
    [Show full text]
  • Case 11 Rivalry in Video Games
    CTAC11 4/17/07 14:01 Page 185 case 11 Rivalry in Video Games At the beginning of 2007, the world video games industry was entering a new and unusual stage of its development. For 11 years the industry had been domin- ated by Sony, whose PlayStation had accounted for well over half of world console sales during the previous two product generations. However, in the new generation of video game consoles, an entirely new situation was emerging. As a result of its own missteps, Sony’s iron grip on the industry had been broken and the seventh generation of video consoles was shaping up into a three-way battle between Sony, Microsoft, and Nintendo. The stakes were high. With each new generation of consoles, the industry had surpassed its previous sales peak (see figure 11.1). Industry forecasts suggested that the seventh generation machines would be no exception – worldwide sales of video games hardware (consoles and handheld players) and software was estimated at around $24 billion in 2006, of which software accounted for around 60%. The market was expected to be bigger in 2007 – especially for hardware. For the three main players in the industry, the key issue was how revenues and profits would be split among them. The evidence of the past was that the video game consoles tended to be a “winner-take-all” industry where customers gravi- tated towards the market leader. The result was that one company tended to establish a market share of over 60% of the market and scooped the major part of the industry profit pool (see table 11.1).
    [Show full text]
  • Xbox 360 GPU Heat Sink Replacement Guide ID: 3342 - Draft: 2020-09-10
    Xbox 360 GPU Heat Sink Replacement Guide ID: 3342 - Draft: 2020-09-10 Xbox 360 GPU Heat Sink Replacement GPU heat sink replacement. Written By: Walter Galan This document was generated on 2020-11-18 01:14:18 AM (MST). © iFixit — CC BY-NC-SA www.iFixit.com Page 1 of 30 Xbox 360 GPU Heat Sink Replacement Guide ID: 3342 - Draft: 2020-09-10 INTRODUCTION Use this guide to remove your Xbox 360's GPU heat sink. Before reinstalling the heat sink, be sure to apply a new layer of thermal paste. TOOLS: PARTS: Arctic Silver ArctiClean (1) Xbox 360 Xenon GPU Heat Sink (1) Arctic Silver Thermal Paste (1) Xbox 360 Jasper GPU Heat Sink (1) Flathead 3/32" or 2.5 mm Screwdriver (1) Spudger (1) T10 Torx Screwdriver (1) T8 Torx Screwdriver (1) Xbox 360 Opening Tool (1) This document was generated on 2020-11-18 01:14:18 AM (MST). © iFixit — CC BY-NC-SA www.iFixit.com Page 2 of 30 Xbox 360 GPU Heat Sink Replacement Guide ID: 3342 - Draft: 2020-09-10 Step 1 — Hard Drive Grasp the hard drive assembly and press the release button while lifting its front edge. Remove the hard drive assembly from the top vent. Step 2 — Bottom Vent Stand the console vertically with the bottom edge facing up. Throughout the following opening procedure, the finger of an Xbox 360 opening tool can be used in place of a spudger. Insert the flat end of a spudger or the edge of an Xbox 360 opening tool into the small gap at the front edge of the bottom vent.
    [Show full text]
  • Creating Models of Interaction for a Video Wall
    Opleiding Informatica Creating Models of Interaction for a Video Wall Cas Dekkers Supervisors: Dr. Ir. Fons J. Verbeek & Dr. Kristian F. D. Rietveld BACHELOR THESIS Leiden Institute of Advanced Computer Science (LIACS) www.liacs.leidenuniv.nl 24/08/2017 Abstract With the emergence of video walls on the global market comes the need of finding intuitive ways to interact with them. This thesis explores ways of controlling video walls with arbitrary human interface devices. It implements logic to create a generic application framework, in which the interaction patterns for these devices are governed. If proven to be usable, the framework can be presented as an open source project and can be extended by adding support for more devices. The ultimate goal of the project is to enable usable interactions of software-controlled video walls with all sorts of human interface devices. That way, future projects and applications can use the framework with their software, allowing for sophisticated interaction capabilities for video walls. Contents 1 Introduction 1 1.1 Introduction . 1 1.2 Related work . 2 1.2.1 FreePIE . 2 1.2.2 Reality-Based Interaction . 3 1.3 Definitions . 4 1.4 Thesis overview . 5 2 Creating a Virtual Remote Controller 7 2.1 Introduction . 7 2.2 Method . 7 2.3 Design . 11 2.4 Implementation . 12 3 Materials & Methods 13 3.1 Setup..................................................... 13 3.2 Human Interface Devices for interaction . 13 3.2.1 Kinect 2 ............................................... 14 3.2.2 Leap Motion controller . 14 3.2.3 Wii Remote controller . 15 3.3 Development environment . 15 4 Design 17 4.1 A generic application framework for video walls .
    [Show full text]
  • Intel Atom® Processor Z3600 and Z3700 Series Datasheet, Vol 1
    Intel® Atom™ Processor Z3600 and Z3700 Series Datasheet December 2014 Revision 003 Document Number: 329474-003 You may not use or facilitate the use of this document in connection with any infringement or other legal analysis concerning Intel products described herein. You agree to grant Intel a non-exclusive, royalty-free license to any patent claim thereafter drafted which includes subject matter disclosed herein. No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document. The products described may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest Intel product specifications and roadmaps. Copies of documents which have an order number and are referenced in this document may be obtained by calling 1-800-548- 4725 or visitwww.intel.com/design/literature.htm. Intel, Intel Atom and the Intel logo, are trademarks of Intel Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others. See Trademarks on intel.com for full list of Intel trademarks. © 2014 Intel Corporation. 2 Datasheet Contents 1Introduction............................................................................................................ 16 1.1 Terminology ....................................................................................................
    [Show full text]
  • Modern Game Console Exploitation
    Modern Game Console Exploitation Eric DeBusschere, Mike McCambridge Abstract The goal of this paper is to provide a high-level, technical summary of the significant ex- ploitations of the Xbox 360 and PlayStation 3. Few academic resources discussing console exploitation exist, especially resources considering the current generation systems, and thus a technical survey of successful exploitations represents a significant contribution to the academic community. The security of both the Xbox 360 and PS3 are discussed, along with the three main Xbox 360 exploits: the King Kong glitch/JTAG exploit, Timing Attack, and the Glitch Attack, as well as the three significant PS3 hacks: Hypervisor Exposure through glitching, PS Jailbreak, and the Root Key Discovery. 1 Introduction Although the successful exploitation of the original Xbox drew considerable media attention and paved the way for sophisticated homebrew software developed by a large community of hackers, pirates, and Linux enthusiasts, modifying or hacking consoles of the current generation has never had the same appeal. Perhaps it is because modern gamers highly value the ability to play online, or the higher degree of technical expertise required to perform current modifications, or maybe the emulators, roms, and homebrew software just cannot compare with contemporary games and entertainment. Whatever the reason, the hacking of current generation consoles has been largely ignored, even in academic communities, despite the fact that modern exploitations are far more complex and interesting, and are mounted against far more sophisticated security systems, than ever before. 2 Modern Console Exploitation 2.1 Security Gaming consoles of the current generation were built from the ground up with security as the foremost concern.
    [Show full text]
  • Building an Xbox 360 Emulator, Part 1: Feasibility/CPU Questions
    Building an Xbox 360 Emulator, part 1: Feasibility/CPU Questions Emulators are complex pieces of software and often push the bounds of what’s possible by nature of having to simulate different architectures and jump through crazy hoops. When talking about the 360 this gets even crazier, as unlike when emulating an SNES the Xbox is a thoroughly modern piece of hardware and in some respects is still more powerful than most mainstream computers. So there’s the first feasibility question: is there a computer powerful enough to emulate an Xbox 360? (sneak peak: I think so) Now assume for a second that a sufficiently fast emulator could be built and all the hardware exists to run it: how would one even know what to emulate? Gaming hardware is almost always completely undocumented and very special-case stuff. There are decades-old systems that are just now being successfully emulated, and some may never be possible! Add to the potential hardware information void all of the system software, usually locked away under super strong NDA, and it looks worse. It’s amazing what a skilled reverse engineer can do, but there are limits to everything. Is there enough information about the Xbox 360 to emulate it? (sneak peak: I think so) Research The Xbox 360 is an embedded system, geared towards gaming and fairly specialized – but at the end of the day it’s derived from the Windows NT kernel and draws with DirectX 9. The hardware is all totally custom (CPU/GPU/memory system/etc), but roughly equivalent to mainstream hardware with a 64-bit PPC chip like those shipped in Macs for awhile and an ATI video chipset not too far removed from a desktop card.
    [Show full text]