294 research outputs found
Parallelizing Julia with a Non-Invasive DSL
Computational scientists often prototype software using productivity
languages that offer high-level programming abstractions. When higher
performance is needed, they are obliged to rewrite their code in a
lower-level efficiency language. Different solutions have been
proposed to address this trade-off between productivity and
efficiency. One promising approach is to create embedded
domain-specific languages that sacrifice generality for productivity
and performance, but practical experience with DSLs points to some
road blocks preventing widespread adoption. This paper proposes a
non-invasive domain-specific language that makes as few visible
changes to the host programming model as possible. We present ParallelAccelerator,
a library and compiler for high-level, high-performance scientific
computing in Julia. ParallelAccelerator\u27s programming model is aligned with existing
Julia programming idioms. Our compiler exposes the implicit
parallelism in high-level array-style programs and compiles them to
fast, parallel native code. Programs can also run in "library-only"
mode, letting users benefit from the full Julia environment and
libraries. Our results show encouraging performance improvements with very few changes to source code required. In particular, few to no additional type annotations are necessary
ACC Saturator: Automatic Kernel Optimization for Directive-Based GPU Code
Automatic code optimization is a complex process that typically involves the
application of multiple discrete algorithms that modify the program structure
irreversibly. However, the design of these algorithms is often monolithic, and
they require repetitive implementation to perform similar analyses due to the
lack of cooperation. To address this issue, modern optimization techniques,
such as equality saturation, allow for exhaustive term rewriting at various
levels of inputs, thereby simplifying compiler design.
In this paper, we propose equality saturation to optimize sequential codes
utilized in directive-based programming for GPUs. Our approach simultaneously
realizes less computation, less memory access, and high memory throughput. Our
fully-automated framework constructs single-assignment forms from inputs to be
entirely rewritten while keeping dependencies and extracts optimal cases.
Through practical benchmarks, we demonstrate a significant performance
improvement on several compilers. Furthermore, we highlight the advantages of
computational reordering and emphasize the significance of memory-access order
for modern GPUs
Sonochemical synthesis, characterization, and effects of temperature, power ultrasound and reaction time on the morphological properties of two new nanostructured mercury(II) coordination supramolecule compounds
Two new mercury(II) coordination supramolecular compounds (CSCs) (1D and 0D), [Hg(L)(I)] (1) and [Hg(L')(SCN)]·2HO (2) (L = 2-amino-4-methylpyridine and L' = 2,6-pyridinedicarboxlic acid), have been synthesized under different experimental conditions. Micrometric crystals (bulk) or nano-sized materials have been obtained depending on using the branch tube method or sonochemical irradiation. All materials have been characterized by field emission scanning electron microscope (FESEM), scanning electron microscopy (SEM), powder X-ray diffraction (PXRD) and FT-IR spectroscopy. Single crystal X-ray analyses on compounds 1 and 2 show that Hg ions are 4-coordinated and 5-coordinated, respectively. Topological analysis shows that the compound 1 and 2 have 2C1, sql net. The thermal stability of compounds 1 and 2 in bulk and nano-size has been studied by thermal gravimetric (TG), differential thermal analyses (DTA) for 1 and differential scanning calorimetry (DSC) for 2, respectively. Also, by changing counter ions were obtained various structures 1 and 2 (1D and 0D, respectively). The role of different parameters like power of ultrasound irradiation, reaction time and temperature on the growth and morphology of the nano-structures are studied. Results suggest that increasing power ultrasound irradiation and temperature together with reducing reaction time and concentration of initial reagents leads to a decrease in particle size
- …