Related papers: Clown: a Microprocessor Simulator for Operating Sy…
The high demand for computer science education has led to high enrollments, with thousands of students in many introductory courses. In such large courses, it can be overwhelmingly difficult for instructors to understand class-wide…
A modern graphics processing unit (GPU) is able to perform massively parallel scientific computations at low cost. We extend our implementation of the checkerboard algorithm for the two dimensional Ising model [T. Preis et al., J. Comp.…
Neurosymbolic learning enables the integration of symbolic reasoning with deep learning but faces significant challenges in scaling to complex symbolic programs, large datasets, or both. We introduce DOLPHIN, a framework that tackles these…
What is it like to create a game for a quantum computer? With its ability to perform calculations and processing in a distinctly different way than classical computers, quantum computing has the potential for becoming the next revolution in…
This paper presents Favalon, a functional programming language built on the premise of a lambda calculus for use as an interactive shell replacement. Favalon seamlessly integrates with typed versions of existing libraries and commands using…
Different hardware platforms and their associated real time operating systems that can be used in an educational laboratory for illustrating engine electronic control unit hardware in the loop testing are presented and compared in this…
Simulation of quantum systems is notoriously challenging for classical computers, while quantum hardware is naturally well-suited for this task. However, the imperfections of contemporary quantum systems poses a considerable challenge in…
The current manufacturing technology allows the integration of a complex multiprocessor system on one piece of silicon (MPSoC for Multiprocessor System-on- Chip). One way to manage the growing complexity of these systems is to increase the…
To enhance the undergraduate and graduate engineering education for nanoscale materials, devices and systems, we report a multi-disciplinary course based on the integration of theory, hands-on laboratory and hands-on computation into a…
Programmers often reuse code from source code repositories to reduce the development effort. Code clones are candidates for reuse in exploratory or rapid development, as they represent often repeated functionality in software systems. To…
Teaching object-oriented programming in an introductory programming course poses considerable challenges to the instructor. An often advocated approach to meeting this challenge is the use of a simple, object-oriented graphics library. We…
We introduce PennyLane's Lightning suite, a collection of high-performance state-vector simulators targeting CPU, GPU, and HPC-native architectures and workloads. Quantum applications such as QAOA, VQE, and synthetic workloads are…
Quantum simulation is a promising near term application for mesoscale quantum information processors, with the potential to solve computationally intractable problems at the scale of just a few dozen interacting quantum systems. Recent…
Quantum computing is a highly abstract scientific discipline, which, however, is expected to have great practical relevance in future information technology. This forces educators to seek new methods to teach quantum computing for students…
The authors present the results of a simple usability test performed on line_explorer, an innovative tool aimed at letting students explore programming. The system offers an interactive environment where students can learn, review, and…
Many of the most performant deep learning models today in fields like language and image understanding are fine-tuned models that contain billions of parameters. In anticipation of workloads that involve serving many of such large models to…
We present MicroGrad, a centralized automated framework that is able to efficiently analyze the capabilities, limits and sensitivities of complex modern processors in the face of constantly evolving application domains. MicroGrad uses…
Graphic Processing Units (GPUs) have become ubiquitous in scientific computing. However, writing efficient GPU kernels can be challenging due to the need for careful code tuning. To automatically explore the kernel optimization space,…
A theoretical spin-based scheme for performing a variety of quantum computations is presented. It makes use of an array of multiple identical computer vectors of phosphorus-doped silicon where the nuclei serve as logical qubits and the…
This system demonstration presents Nemo, a new logic programming engine with a focus on reliability and performance. Nemo is built for data-centric analytic computations, modelled in a fully declarative Datalog dialect. Its scalability for…