Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation 2018
DOI: 10.1145/3192366.3192393
|View full text |Cite
|
Sign up to set email alerts
|

SWOOP: software-hardware co-design for non-speculative, execute-ahead, in-order cores

Abstract: Increasing demands for energy eiciency constrain emerging hardware. These new hardware trends challenge the established assumptions in code generation and force us to rethink existing software optimization techniques. We propose a cross-layer redesign of the way compilers and the underlying microarchitecture are built and interact, to achieve both performance and high energy eiciency. In this paper, we address one of the main performance bottlenecksÐlast-level cache missesÐthrough a softwarehardware co-design.… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2

Citation Types

0
2
0

Year Published

2020
2020
2022
2022

Publication Types

Select...
5
1

Relationship

1
5

Authors

Journals

citations
Cited by 10 publications
(2 citation statements)
references
References 79 publications
(71 reference statements)
0
2
0
Order By: Relevance
“…Compile-time application analysis is also used to categorize and prioritize instructions by predicting the critical path of the execution [34], [35]. Solutions with good balance between performance and energy efficiency use modified hardware equipped with the appropriate compile-time support to statically reorder instructions in advance [36]- [42]. But, unlike our work, these solutions require modification to the application itself and do not provide backward compatibility for deployed applications.…”
Section: Related Workmentioning
confidence: 99%
“…Compile-time application analysis is also used to categorize and prioritize instructions by predicting the critical path of the execution [34], [35]. Solutions with good balance between performance and energy efficiency use modified hardware equipped with the appropriate compile-time support to statically reorder instructions in advance [36]- [42]. But, unlike our work, these solutions require modification to the application itself and do not provide backward compatibility for deployed applications.…”
Section: Related Workmentioning
confidence: 99%
“…Hardware-software cooperative techniques involve new instructions, advanced profiling, or binary translation for separating critical instruction slices, see for example DAE [57], speculative slice execution [71], flea-flicker multi-pass pipelining [7], braid processing [65], and OUTRIDER [16]. Instruction slices have also been exploited to improve the energy-efficiency of both in-order and OoO processors [11,35,54,63,64]. PRE does not require a helper thread, hardware context, or support from software for converting demand misses into hits.…”
Section: Related Workmentioning
confidence: 99%