skip to content

Department of Computer Science and Technology

Read more at: AI and Health Records

AI and Health Records

18 November 2019

What opportunities are there for AI methods to contribute to healthcare in Ethiopia?

I've been learning about the IT systems deployed in the Bahir Dar health centre and main hospital. There are some serious systems challenges - with some relationship to my previous work in electronic health records, but no apparent 'quick wins' for AI research.


Read more at: Programming Neural Nets in Amharic

Programming Neural Nets in Amharic

7 November 2019

Is it possible to teach and practice programming wholly in a national language, rather than the mix of English keywords and local content that is so typical of digital working?

Addisu Damena at the Bahir Dar Institute of Technology has created a system that does exactly this - not only for practical tasks like interactive websites, but even for experimenting with AI using neural networks.


Read more at: An Amharic Arduino? Culture in hardware

An Amharic Arduino? Culture in hardware

1 November 2019

We have been reminded how deep the cultural assumptions of open source and community computing can go.

Eden Melaku, a fifth-year undergraduate in software engineering at Bahir Dar University, discovered during a hackathon-style workshop that the open source Arduino platform is not open enough to support the Amharic language.


Read more at: Exploring AI opportunities in Ethiopia

Exploring AI opportunities in Ethiopia

29 October 2019

It's time to define some research priorities for our collaboration with Ethiopian colleagues.

Helen and I met with Tesfa Tegegne in Addis Ababa, to discuss issues relating to development of Amharic language resources in AI for Development, and potential for tools that might "leapfrog" data science methods and school curriculum for an AI generation.


Read more at: Mathematics curriculum for AI

Mathematics curriculum for AI

21 October 2019

What maths do we need for a new generation of AI and Data Science workers?

In preparation for departure to Ethiopia, Helen and I visited the team at the Cambridge Mathematics project.


Read more at: About the banner image

About the banner image

20 October 2019

I made the banner image for this blog to think about AI in Africa.

The red dunes of the Namib desert show the beauty of the African continent, and remind me of Nnedi Okorafor’s Binti . The cut-away behind the letters AI has been transformed using a Deep Neural Network for style transfer.


Read more at: Broad learning not deep learning

Broad learning not deep learning

14 October 2019

Artificial intelligence research has become deep but narrow. What would AI look like if it was invented in Africa?

Our goal is to explore that question by working with computer scientists and educators in Ethiopia, Namibia, Uganda and elsewhere. This blog will be our project diary over the coming year.


Read more at: In Praise of Undergraduate Research

In Praise of Undergraduate Research

8 August 2019

In my last post I discussed the Janus automatic binary parallelisation tool that my postdoc, Kevin, has developed. At VEE earlier this year we had another paper on Janus , this time extending it to extract other forms of parallelism—automatic vectorisation for data-level parallelism and software prefetching for memory-level parallelism. We show how these schemes are applied to binaries in the context of Janus (with a neat trick for dealing with bounds-checking code when inserting prefetches to arrays) and evaluate them together. I’m not aware of any other work that tries to extract all three forms of parallelism at once. However, what I liked best about this paper was not the techniques, nor the results, but the fact that the two passes...


Read more at: Janus: Statically-Driven and Profile-Guided Automatic Dynamic Binary Parallelisation

Janus: Statically-Driven and Profile-Guided Automatic Dynamic Binary Parallelisation

18 February 2019

One of the themes of my research has been and continues to be the exploitation of parallelism in its many forms. I’ve looked into data-level parallelism by improving the performance of SLP by, for example, reducing the number of instructions that are vectorised and (spoiler alert for a future publication) I have a PhD student working on speculative vectorisation. With Sam Ainsworth , formerly my PhD student, now a postdoc, I have published research that exploits memory-level parallelism within the compiler , architecture and in both with a programmable prefetcher . We’ve also looked into taking advantage of parallelism for error detection . However, the first work I did in this area, and the kind of work...


Read more at: Parallel Error Detection Using Heterogeneous Cores

Parallel Error Detection Using Heterogeneous Cores

27 June 2018

Soft, or transient, errors are faults that occur seemingly at random, causing bits to flip within an integrated circuit. This is especially important in memory cells, and I remember very clearly reading a blog post from James Hamilton several years ago now, where he talked about the need for ECC on DRAM in servers and discussed some (what was then) recent academic work in the subject. ECC is a great way to protect memory, being high performance with low power and area overheads, given its ability to detect multiple errors and correct some too. However, beyond the memory hierarchy, techniques for error detection and recovery are little used due to the difficulties in protecting logic cheaply.

One area where error detection...