Benedict Gaster


Dr Benedict Gaster is a lecturer and researcher at the University of West of England, leading the IoT and Comms group. Benedict is working on programming tools and models with application to the Internet of Things and GPU acceleration, with a particular focus on ARM microprocessors, Rust, and OpenCL 2.x. He is the lead architect on the IoT network, LoRaWAN Bristol, which provide LPWAN coverage for Bristol’s city center. In a previous life he was a lead architect in the design and implementation of the programming system OpenCL and a GPU architect at AMD and Qualcomm. He has a PhD from the University of Nottingham, in type theory.



LoRaWAN for the IoT, building a secure and scalable, low-cost, network for a world of connected devices (2017)

In this talk, I will introduce LoRaWAN as a key radio technology for IoT and walk through why it is a technologically important development as I show how to build LoRaWAN node applications to explore the possibility of IoT.

Soon, everything on Earth will be connected via peer-to-peer networking and/or the public Internet, with a multitude of sensor-driven devices dramatically changing our lives and our environment. These devices will be based on a wide variety of devices, ranging from tiny (e.g., microcontrollers) to huge (e.g., cloud servers), with one thing in common: they will require a radio connection to a Gateway that is connected to the internet, in some form or another. While Bluetooth LE or even Wi-fi might be used around the “smart” house or within a limited range, the battery limitations of the later and the range limitations of the former mean it is unlikely that these standards will form the backbone of a IoT network.

For IoT there are a number of competing radio standards, e.g. LoRa and SigFox, both are long range and provide the ability to build nodes that are very low-power, with a potential battery life of 2 or more years, while providing a long range, often in access of 10km. A key feature of these standards is they are low-bandwidth, often each message is limited to 100 or so bytes, for SigFox even less. Each standard has its drawbacks but SigFox requires more expensive chipsets for the Gateway side of things, which is not the case for LoRa, and as such this has seen the development of community, crowd sourced, LoRa networks, based on LoRaWAN. One example of this is The Things Network, who community has been developing Gateways, nodes, cloud backends, and software to run on these, supporting open data and open science. In Bristol, we are deploying a LoRaWAN network built on existing wireless infrastructure locations.

In this talk we will introduce LoRaWAN from a technical perspective, providing examples, provide live demonstrations of Bristol LoRaWAN infrastructure and IoT on the move, example nodes, some of which will be used by the audience, throughout the presentation. This will demonstrate an example of the whole process, from radio messages, forwarding via IP, to cloud backend, enabled via The Things Network backend infrastructure providing the internet for Things.


Save (er) GPU programming with Rust and OpenCL (2017)

In this talk, I will introduce Rust, OpenCL 2.x, and using the two to build roust abstractions for programming computations on modern GPUs.

Rust is a modern systems programming language, designed to provide abstractions for safe concurrent programming. OpenCL is a system programming language for programming parallel computations on the GPU, it is not particularly safe! In this talk I will Rust of OpenCL, a pragmatic approach to building a safe programming model (based on Rust) for heterogeneous computing and an alternative for developers targeting OpenCL enabled devices. We show how Rust’s notion of ownership can benefit of the offload model of OpenCL, providing “automatic" abstractions for moving data to and from the GPU.