Talk to Emacs with a GPT4 Co-Worker

Gallagher PryorAI, Education, Open Source 1 Comment

With the successful construction of a GPT4 co-worker, we can now talk to emacs. (And also understand how disturbingly simple it is to build one – read on!) WARNING The AI can make mistakes and you might say something horrible on accident like “Man, I hate my harddrive!” I hope you understand the ramifications 😀 With a voice interface, ask the AI to do work or answer questions for you in the context of the current buffer (file/directory). The AI will do the job asynchronously out of the way, leaving you to move on to the next task while the AI plugs away and speaks to you about its completed task. Demo: The code is posted at It requires some …

ArrayFire v3.9.0 Release

Umar ArshadAnnouncements, ArrayFire, C/C++, CUDA, oneAPI, OpenCL 1 Comment

We are pleased to announce a new release of the ArrayFire library, v3.9.0. This release makes it easier than ever to target new devices without sacrificing performance. This post describes four of these new features, including: oneAPI Backend This release is the first time since v3.0 that introduces a new backend. The new backend is built with the oneAPI specification on top of the SYCL language. oneAPI is an open specification providing a full framework for high-performance computing applications without vendor lock-in. While this has been possible with OpenCL, the oneAPI specification includes libraries like BLAS and FFT significantly reducing the burden on the developers to maintain math functions and increasing the performance of these common operations. Here is a …

Reconstruction of 3D Phase Contrast Atomic Electron Tomography

John MelonakosArrayFire, Case Studies Leave a Comment

Researchers from UC Berkeley and Lawrence Berkeley National Laboratory credit ArrayFire in a paper published in the 2020 IEEE High-Performance Extreme Computing Conference (HPEC). The paper is titled “GPU Accelerated Anomaly Detection of Large Scale Light Curves.” In this work, the authors present a new algorithm for reconstructing the three-dimensional (3D) electrostatic potential of a sample at atomic resolution from phase contrast imaging using high-resolution transmission electron microscopy. Summary Transmission electron microscopy (TEM) offers various imaging modes, allowing for quantitative 3D estimations of local structure, electrostatic and magnetic potentials, and local chemistry, significantly impacting biology and materials science. It is now possible to measure the 3D position of individual atoms with high precision and even determine both the 3D position and species …

Parallelization of FOAGDD Point of Interest Extraction

Gustavo StahlArrayFire, Case Studies Leave a Comment

(This is a guest post by Gustavo Stahl from São Paulo State University in Brazil.) Summary Corners present in images are widely used in multiple areas of computer science, such as augmented reality, autonomous vehicles, service robots, 3D reconstructions, object tracking, and many more. To work appropriately, applications in these areas usually rely on fast corner detectors with good-quality extractions. The FOAGDD (First-order Anisotropic Gaussian Direction Derivative) is an algorithmic technique for extracting corners in an image originally proposed by Weichuan Zhang and Changming Sun in 2019. The method surpassed the majority of extractors in corner detection quality but lacked speed, making it improper for real-time applications. Hence, this paper proposes transferring the workload from the original implementation to the …

The Torch By ArrayFire: Q1’2023 GPU Updates

John MelonakosArrayFire, Newsletter Leave a Comment

News for the accelerated computing community – March 23, 2023 Signup for Newsletter Emails Dear ArrayFire Community, The first quarter of 2023 was highlighted by substantial progress on the oneAPI backend for ArrayFire. Updates on this project can be tracked on the ArrayFire Github. With the explosion of AI throughout technical computing domains, we are working closely with the teams at Facebook AI Research (FAIR) working on the Flashlight and Shumai projects. We share a project spotlight on Shumai below. From interactions with many of you and reading papers published using ArrayFire, we are delighted to see our work be used to make a difference in meaningful technical computing projects. If you want to showcase your project in this newsletter, please …

How does a Quantum Computer work?

Edwin SolisArrayFire, Quantum Computing Leave a Comment

This is the third post in a series on quantum computing, which began with the following: By design, a quantum computer is a device that executes quantum computations. These quantum computations utilize quantum mechanical principles to encode and operate on inputs and outputs. There are two main types of quantum computers based on the data unit: discrete-based and continuous-based. Discrete-based quantum computers use a discrete unit of data with quantum properties; most use qubits on which operations are performed. In contrast, continuous-based quantum computers utilize observable quantities with continuous intervals to define the system’s state. We will focus on discrete/digital quantum systems as this is the most common model for which many algorithms have already been developed. Like classical computers, …

Quantum States vs Classical States

Edwin SolisArrayFire, Quantum Computing Leave a Comment

In the last post of this series, we discussed how supercharging quantum computing with Quantum Mechanics’ principles allows high computational power. To come to terms with this, we must first delve into the math behind quantum memory. A computer needs memory. It stores input and output data as a transitional place to operate on data. We care about this functionality because data encodes states. In the classical sense, a state refers to the particular arrangement that something is in at a specific moment. Examples of a classical state are the position of a door: either open or closed; the color of a marker: red, blue, yellow, etc.; the value of a bit: 0 or 1 / false or true; and …

What is a Quantum Computer?

Edwin SolisArrayFire, Quantum Computing Leave a Comment

Quantum computing has been a growing area of computer science over the last few years. Thanks to leaps in material engineering, physics, and noise reduction algorithms, the possibility of constructing a fully-fledged quantum computer in the future grows nearer.  Like the computers we use daily, a quantum computer is a machine that can perform computations with given data. However, unlike classical computers, they are characterized by using Quantum Mechanical Principles in the data storage and logic of those computations. Among some of these novel Quantum Mechanical properties, these are the keys ones: Even if Quantum Computers have many advantages, including possibly being faster, are classical computers insufficient? As innovation in new technologies grows in fields such as finance, medicine, and …

ArrayFire v3.8.3 Release

John MelonakosAnnouncements, ArrayFire Leave a Comment

We are pleased to announce another patch release of the ArrayFire library. This release, like all patch releases, concentrates on bug fixes and minor performance improvements. You can access the new version here: installers and source code. Notable improvements include: Additionally, several bugs have been patched. Visit our GitHub project for more information on the ArrayFire Roadmap. It has never been easier to use the ArrayFire library. With your support, we continue to push the limits of all the accelerators coming to the market. Is there a project where you think we can help? Please reach out to our expert engineers to help you take your project to the next level.

Detecting Anomalies of Large-Scale Light Curves

John MelonakosArrayFire, Case Studies Leave a Comment

Researchers from Tsinghua University, the Chinese Academy of Sciences, and David Bader of the New Jersey Institute of Technology credit ArrayFire in a paper published in the 2020 IEEE High-Performance Extreme Computing Conference (HPEC). The paper is titled “GPU Accelerated Anomaly Detection of Large Scale Light Curves.” In this research, light from 200,000 stars is tracked, looking for events of high-mass dark objects that bend light from the source, indicating the discovery of planets and black holes. Summary Microlensing is a unique anomaly that occurs when a lens (or lenses) passes between a light source (star) and an observer (Earth). These lenses are high-mass objects that bend the light from the source. This anomaly is helpful in the detection of “dark” objects. …