SKOPE Scalars and Attribute Extension Prasanna Balaprakash and
SKOPE: Scalars and Attribute Extension Prasanna Balaprakash and Vitali Morozov Performance Engineering Team Leadership Computing Facility Argonne National Laboratory Rockville, MD JANUARY 5 -7, 2015
Skeleton Language Extension for Scalars Go to "View | Header and Footer" to add your organization, sponsor, meeting name here; then, click "Apply to All" 2
Modification § § § Parse. py def parse. Access(string, macros, data, mode, ln_tag, file_tag, hint_info=None) Access(data[name], indices, mode, ln_tag, file_tag) Ast. Expr(string, macros, data) (source in Ast. Expr) Access(data[name], indices, mode, ln_tag, file_tag) expect an array for load and strore access Given a context (def get. Context) § macros: scalars, constants, index vars § Data: array holders Go to ”Insert (View) | Header and Footer" to add your organization, sponsor, meeting name here; then, click "Apply to All" 3
Modification § Parse. py Access(data[name], indices, mode, ln_tag, file_tag) expect an array for load and strore access scalar will not be found in data and Ast. Expr will return zero (no indicies) pass empty list [] to indices and scalar name to data[name] ld takes you to Parse. Access and look for corresponding range in macros § Characterize. Exe. py – Handle this explicitly Go to ”Insert (View) | Header and Footer" to add your organization, sponsor, meeting name here; then, click "Apply to All" 4
Extending attributes § § BST. py class BSTnode(object): – #add arbitrary attributes to each statement – self. frequency=0 – self. order=0 Go to ”Insert (View) | Header and Footer" to add your organization, sponsor, meeting name here; then, click "Apply to All" 5
Memory model using reuse distance Go to ”Insert (View) | Header and Footer" to add your organization, sponsor, meeting name here; then, click "Apply to All" 6
- Slides: 6