@article {MTMT:31818418,
	title = {Deep learning in static, metric-based bug prediction},
	journal = {ARRAY},
	volume = {6},
	year = {2020},
	abstract = {Our increasing reliance on software products and the amount of money we spend on creating and maintaining them makes it crucial to find bugs as early and as easily as possible. At the same time, it is not enough to know that we should be paying more attention to bugs; finding them must become a quick and seamless process in order to be actually used by developers. Our proposal is to revitalize static source code metrics {\textendash} among the most easily calculable, while still meaningful predictors {\textendash} and combine them with deep learning {\textendash} among the most promising and generalizable prediction techniques {\textendash} to flag suspicious code segments at the class level. In this paper, we show a detailed methodology of how we adapted deep neural networks to bug prediction, applied them to a large bug dataset (containing 8780 bugged and 38,838 not bugged Java classes), and compared them to multiple {\textquotedblleft}traditional{\textquotedblright} algorithms. We demonstrate that deep learning with static metrics can indeed boost prediction accuracies. Our best model has an F-measure of 53.59\%, which increases to 55.27\% for the best ensemble model containing a deep learning component. Additionally, another experiment suggests that these values could improve even further with more data points. We also open-source our experimental Python framework to help other researchers replicate our findings.},
	keywords = {Bug prediction, Code metrics, Deep learning, NEURAL NETWORKS},
	issn = {2590-0056},
	doi = {10.1016/j.array.2020.100021},
	url = {https://m2.mtmt.hu/api/publication/31818418},
	author = {Ferenc, Rudolf and B{\'a}n, D{\'e}nes and Gr{\'o}sz, Tam{\'a}s and Tibor Gyim{\'o}thy}
}
@article {MTMT:3328346,
	title = {Prediction models for performance, power, and energy efficiency of software executed on heterogeneous hardware},
	journal = {JOURNAL OF SUPERCOMPUTING},
	volume = {75},
	year = {2019},
	pages = {4001-4025},
	abstract = {Heterogeneous computer environments are becoming commonplace so it is increasingly important to understand how and where we could execute a given algorithm the most efficiently. In this paper we propose a methodology that uses both static source code metrics, and dynamic execution time, power, and energy measurements to build gain ratio prediction models. These models are trained on special benchmarks that have both sequential and parallel implementations and can be executed on various computing elements, e.g., on CPUs, GPUs, or FPGAs. After they are built, however, they can be applied to a new system using only the system{\textquoteright}s static source code metrics which are much more easily computable than any dynamic measurement. We found that while estimating a continuous gain ratio is a much harder problem, we could predict the gain category (e.g., {\textquotedblleft}slight improvement{\textquotedblright} or {\textquotedblleft}large deterioration{\textquotedblright}) of porting to a specific configuration significantly more accurately than a random choice, using static information alone. We also conclude based on our benchmarks that parallelized implementations are less maintainable, thereby supporting the need for automatic transformations.},
	issn = {0920-8542},
	doi = {10.1007/s11227-018-2252-6},
	url = {https://m2.mtmt.hu/api/publication/3328346},
	author = {B{\'a}n, D{\'e}nes and Ferenc, Rudolf and Siket, Istv{\'a}n and Kiss, {\'A}kos and Tibor Gyim{\'o}thy}
}
@article {ban2018prediction,
	title = {Prediction Models for Performance, Power, and Energy Efficiency of Software Executed on Heterogeneous Hardware},
	journal = {Journal of Supercomputing},
	year = {2018},
	note = {(Accepted for publication.)},
	pages = {25},
	publisher = {springer},
	author = {B{\'a}n, D{\'e}nes and Rudolf Ferenc and Siket, Istv{\'a}n and {\'A}kos Kiss and Tibor Gyim{\'o}thy}
}
