• DocumentCode
    3245655
  • Title

    Speculation with Little Wasting: Saving Cost in Software Speculation through Transparent Learning

  • Author

    Jiang, Yunlian ; Mao, Feng ; Shen, Xipeng

  • Author_Institution
    Dept. of Comput. Sci., Coll. of William & Mary, Williamsburg, VA, USA
  • fYear
    2009
  • fDate
    8-11 Dec. 2009
  • Firstpage
    543
  • Lastpage
    550
  • Abstract
    Software speculation has shown promise in parallelizing programs with coarse-grained dynamic parallelism. However, most speculation systems use offline profiling for the selection of speculative regions. The mismatch with the input-sensitivity of dynamic parallelism may result in large numbers of speculation failures in many applications. Although with certain protection, the failed speculations may not hurt the basic efficiency of the application, the wasted computing resource (e.g. CPU time and power consumption) may severely degrade system throughput and efficiency. The importance of this issue continuously increases with the advent of multicore and parallelization in portable devices and multiprogramming environments. In this work, we propose the use of transparent statistical learning to make speculation cross-input adaptive. Across production runs of an application, the technique recognizes the patterns of the profitability of the speculative regions in the application and the relation between the profitability and program inputs. On a new run, the profitability of the regions are predicted accordingly and the speculations are switched on and off adaptively. The technique differs from previous techniques in that it requires no explicit training, but is able to adapt to changes in program inputs. It is applicable to both loop-level and function-level parallelism by learning across iterations and executions, permitting arbitrary depth of speculations. Its implementation in a recent software speculation system, namely the behavior-oriented parallelization system, shows substantial reduction of speculation cost with negligible decrease (sometimes, considerable increase) of parallel execution performance.
  • Keywords
    learning (artificial intelligence); parallel processing; statistical analysis; behavior-oriented parallelization system; coarse-grained dynamic parallelism; function-level parallelism; loop-level parallelism; software speculation; transparent statistical learning; Application software; Computer applications; Costs; Degradation; Energy consumption; Multicore processing; Parallel processing; Power system protection; Profitability; Throughput; Adaptive Speculation; Multicore; Parallelization; Transparent Learning;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Systems (ICPADS), 2009 15th International Conference on
  • Conference_Location
    Shenzhen
  • ISSN
    1521-9097
  • Print_ISBN
    978-1-4244-5788-5
  • Type

    conf

  • DOI
    10.1109/ICPADS.2009.130
  • Filename
    5395340