Alsaedi, 2019 - Google Patents
Predicting the Complexity of Locality Patterns in Loop Nests in C Scientific ProgramsAlsaedi, 2019
View PDF- Document ID
- 6790084477356946610
- Author
- Alsaedi N
- Publication year
External Links
Snippet
On modern computer systems, the performance of an application depends on its locality. Most existing locality measurements performed by compiler static analysis mainly target analyzing regular array references in loop nests. Measurements based on compiler static …
- 238000004458 analytical method 0 abstract description 119
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformations of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
- G06F8/4441—Reducing the execution time required by the program code
- G06F8/4442—Reducing the number of cache misses; Data prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformations of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
- G06F8/456—Parallelism detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3471—Address tracing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3457—Performance evaluation by simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for programme control, e.g. control unit
- G06F9/06—Arrangements for programme control, e.g. control unit using stored programme, i.e. using internal store of processing equipment to receive and retain programme
- G06F9/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/885—Monitoring specific for caches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/86—Event-based monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRICAL DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06N—COMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N99/00—Subject matter not provided for in other groups of this subclass
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhong et al. | Program locality analysis using reuse distance | |
Sun et al. | Automated performance modeling of HPC applications using machine learning | |
CaΒcaval et al. | Estimating cache misses and locality using stack distances | |
Chen et al. | The Jrpm system for dynamically parallelizing Java programs | |
US8024719B2 (en) | Bounded hash table sorting in a dynamic program profiling system | |
US7802236B2 (en) | Method and apparatus for identifying similar regions of a program's execution | |
US9798528B2 (en) | Software solution for cooperative memory-side and processor-side data prefetching | |
Berg et al. | A statistical multiprocessor cache model | |
Mancuso et al. | Light-prem: Automated software refactoring for predictable execution on cots embedded systems | |
Arafa et al. | Fast, accurate, and scalable memory modeling of GPGPUs using reuse profiles | |
Chen et al. | Locality analysis through static parallel sampling | |
Ball et al. | Using paths to measure, explain, and enhance program behavior | |
Inagaki et al. | Stride prefetching by dynamically inspecting objects | |
Zhang et al. | A prediction system service | |
CN112130848B (en) | Band-width sensing circulation block optimization method, compiling system, equipment and storage medium for scratch-pad memory | |
Klonatos et al. | Automatic synthesis of out-of-core algorithms | |
Alsaedi | Predicting the Complexity of Locality Patterns in Loop Nests in C Scientific Programs | |
Sair et al. | Quantifying load stream behavior | |
Singh et al. | Snowpack: Efficient parameter choice for GPU kernels via static analysis and statistical prediction | |
Alsaedi et al. | Applying supervised learning to the static prediction of locality-pattern complexity in scientific code | |
Zhai et al. | Detecting performance variance for parallel applications without source code | |
Deiana | Generating Thread-Level Parallelism in Nondeterministic Programs | |
Yu | Improving relocation performance in ZGC by identifying the size of small objects | |
Pfaffe | Autotuning for Automatic Parallelization on Heterogeneous Systems | |
Shen | Exploring Heterogeneous Architectures with Tools and Applications |