Supporting Multiple Inheritance in an Object-Oriented DSL for GPGPU by Class Hierarchy Transformation (bibtex)
by Fathul Asrar Alfansuri, Hidehiko Masuhara, Lubis Luthfan Anshar and Youyou Cong
Abstract:
Object-support in GPGPU domain specific languages (DSL) enables highly parallel object-oriented programming on GPUs. This paper improves object-support in Sanajeh, a Python DSL for GPGPU, by adding a multiple inheritance feature. Existing Sanajeh is restricted to single inheritance, which has limited flexibility. This restriction is due to its backend library which is not trivial to be extended. The limitation makes it difficult for Sanajeh to represent multiple classes that share common behaviors but belong to different class hierarchies. Our approach transforms a multiple inheritance class hierarchy into a single inheritance class hierarchy through mixin linearization, class duplication and wrapper functions at the Python level. We evaluate this work by rewriting agent-based modeling simulation program. We then compare the original and rewritten version with respect to their execution result and code effectiveness. The execution time is 2% slower than the original code.
Reference:
Supporting Multiple Inheritance in an Object-Oriented DSL for GPGPU by Class Hierarchy Transformation (Fathul Asrar Alfansuri, Hidehiko Masuhara, Lubis Luthfan Anshar and Youyou Cong), In Proceedings of the 39th JSSST Annual Conference (Shimpei Hayashi, ed.), 2022.
Bibtex Entry:
@inproceedings{fathul2022jssst,
  organization = {{J}apan Society for Software Science and Technology
		  ({JSSST})},
  month = aug,
  url = {https://jssst2022.wordpress.com/program/},
  date = {2022-08-31},
  location = {Nanzan University / Online},
  editor = {Shimpei Hayashi},
  year = 2022,
  howpublished = {The 39th JSSST Annual Conference},
  booktitle = {Proceedings of the 39th JSSST Annual Conference},
  author = {{Fathul Asrar Alfansuri} and Hidehiko Masuhara and Lubis Luthfan Anshar and Youyou Cong},
  title = {Supporting Multiple Inheritance in an Object-Oriented {DSL} for {GPGPU} by Class Hierarchy Transformation},
  pdf = {jssst2022-5.pdf},
  abstract = {Object-support in GPGPU domain specific languages (DSL) enables highly parallel object-oriented programming on GPUs. This paper improves object-support in Sanajeh, a Python DSL for GPGPU, by adding a multiple inheritance feature. Existing Sanajeh is restricted to single inheritance, which has limited flexibility. This restriction is due to its backend library which is not trivial to be extended. The limitation makes it difficult for Sanajeh to represent multiple classes that share common behaviors but belong to different class hierarchies. Our approach transforms a multiple inheritance class hierarchy into a single inheritance class hierarchy through mixin linearization, class duplication and wrapper functions at the Python level. We evaluate this work by rewriting agent-based modeling simulation program. We then compare the original and rewritten version with respect to their execution result and code effectiveness. The execution time is 2\% slower than the original code.}
}
Powered by bibtexbrowser