Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Fangke Ye

dblp:229/7064 · DBLP profile ↗
← Back
2ranked-venue papers
2as first author
1since 2021 · last 2023
0000-0002-8545-6116ORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 1 · 1 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-author · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Programming languages and type systems · 41% Compilers and program optimization · 41% Program analysis · 12%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Parallel and multicore computing · 33% High-performance computing · 33% Electronic design automation · 33%

Topics — the 7 heaviest of 7, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Compilers and program optimization
compiler optimization
0.712023
Concrete Type Inference for Code Optimization using Machine Learning with SMT Solving · Proc. ACM Program. Lang. 2023
Programming languages and type systems
type inference
0.712023
Concrete Type Inference for Code Optimization using Machine Learning with SMT Solving · Proc. ACM Program. Lang. 2023
Parallel and multicore computing
MPI
0.312018
Detecting MPI usage anomalies via partial program symbolic execution · SC 2018
High-performance computing
program analysis
0.312018
Detecting MPI usage anomalies via partial program symbolic execution · SC 2018
Electronic design automation › formal methods
symbolic execution
0.312018
Detecting MPI usage anomalies via partial program symbolic execution · SC 2018
Program analysis › static analysis › constraint-based analysis
constraint inference
0.212023
Concrete Type Inference for Code Optimization using Machine Learning with SMT Solving · Proc. ACM Program. Lang. 2023
Software maintenance and evolution › log analysis
anomaly detection
0.112018
Detecting MPI usage anomalies via partial program symbolic execution · SC 2018

Methods — techniques the papers use, named apart from their topics

symbolic execution · 0.7machine learning (GPT-4) · 0.7constraint-based inference · 0.7SMT solving · 0.7
YearPublicationVenuePosition
2023 Concrete Type Inference for Code Optimization using Machine Learning with SMT Solving
abstract
Despite the widespread popularity of dynamically typed languages such as Python, it is well known that they pose significant challenges to code optimization due to the lack of concrete type information. To overcome this limitation, many ahead-of-time optimizing compiler approaches for Python rely on programmers to provide optional type information as a prerequisite for extensive code optimization. Since few programmers provide this information, a large majority of Python applications are executed without the benefit of code optimization, thereby contributing collectively to a significant worldwide wastage of compute and energy resources. In this paper, we introduce a new approach to concrete type inference that is shown to be effective in enabling code optimization for dynamically typed languages, without requiring the programmer to provide any type information. We explore three kinds of type inference algorithms in our approach based on: 1) machine learning models including GPT-4, 2) constraint-based inference based on SMT solving, and 3) a combination of 1) and 2). Our approach then uses the output from type inference to generate multi-version code for a bounded number of concrete type options, while also including a catch-all untyped version for the case when no match is found. The typed versions are then amenable to code optimization. Experimental results show that the combined algorithm in 3) delivers far superior precision and performance than the separate algorithms for 1) and 2). The performance improvement due to type inference, in terms of geometric mean speedup across all benchmarks compared to standard Python, when using 3) is 26.4× with Numba as an AOT optimizing back-end and 62.2× with the Intrepydd optimizing compiler as a back-end. These vast performance improvements can have a significant impact on programmers’ productivity, while also reducing their applications’ use of compute and energy resources.
Fangke Ye, Jisheng Zhao, Jun Shirako, Vivek Sarkar
Proc. ACM Program. Lang.1
2018 Detecting MPI usage anomalies via partial program symbolic execution
Fangke Ye, Jisheng Zhao, Vivek Sarkar
SC1