• DocumentCode
    244416
  • Title

    Harnessing Unreliable Cores in Heterogeneous Architecture: The PyDac Programming Model and Runtime

  • Author

    Bin Huang ; Sass, Ron ; DeBardeleben, Nathan ; Blanchard, Sean

  • Author_Institution
    Reconfigurable Comput. Syst. Lab., Univ. of North Carolina at Charlotte, Charlotte, NC, USA
  • fYear
    2014
  • fDate
    23-26 June 2014
  • Firstpage
    744
  • Lastpage
    749
  • Abstract
    Heterogeneous many-core architectures combined with scratch-pad memories are attractive because they promise better energy efficiency than conventional architectures and a good balance between single-thread performance and multi-thread throughput. However, programmers will need an environment for finding and managing the large degree of parallelism, locality, and system resilience. We propose a Python-based task parallel programming model called PyDac to support these objectives. PyDac provides a two-level programming model based on the divide-and-conquer strategy. The PyDac runtime system allows threads to be run on unreliable hardware by dynamically checking the results without involvement from the programmer. To test this programming model and runtime, an unconventional heterogeneous architecture consisting of PowerPC and ARM cores was developed and emulated on an FPGA device. We inject faults during the execution of micro-benchmarks and show that through the use of double and triple modular redundancy we are able to complete the benchmarks with the correct results while only incurring a proportional performance penalty.
  • Keywords
    field programmable gate arrays; multi-threading; multiprocessing systems; parallel architectures; ARM cores; FPGA device; PowerPC; PyDac programming model; PyDac runtime system; Python-based task parallel programming model; divide-and-conquer strategy; double modular redundancy; energy efficiency; faults injection; heterogeneous many-core architectures; microbenchmarks; multithread throughput; parallelism; scratch-pad memories; single-thread performance; system resilience; triple modular redundancy; two-level programming model; Computer architecture; Hardware; Programming; Redundancy; Resilience; Runtime; Fault Tolerance; Heterogeneous Many-core Processor; Resilience; Soft Error; Task-based Programming Model;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Dependable Systems and Networks (DSN), 2014 44th Annual IEEE/IFIP International Conference on
  • Conference_Location
    Atlanta, GA
  • Type

    conf

  • DOI
    10.1109/DSN.2014.77
  • Filename
    6903635