Wednesday 1 December 2021

EMBS Design Contest 2021

Another year has passed, and with the relaxation of the restrictions related to the covid 19 pandemic we were allowed back to campus for all embedded systems lectures and practicals in the Autumn term in 2021. This was not possible for everyone, so all the teaching material was also made available via virtual learning environment (including pre-recorded videos of all lectures created in 2020, as well as the recording of the live lectures from 2021).

Our annual design contest took place on campus between November 23 and 25, and the design challenge was again based on the mapping of embedded software tasks onto a multiprocessor system based on Networks-on-Chip (NoC). This challenge was introduced last year, and was successfully solved by most groups despite of the difficulties of working online. One of the groups even managed to find a solution that was superior to the model solution I had found for the challenge! More details in last year's blog post.

For this year's challenge, I decided to make the problem a bit harder. Firstly, because the element of surprise would no longer be there (over the years I have witness how much students learn from their seniors). And secondly, because last year's groups did so much better than I expected, so I wanted to make sure this year's students felt sufficiently challenged.

The increased difficulty came from two small changes to challenge. The first was simple and obvious: I increased slightly the number of tasks (from 44 to 54) and inter-task communications (from 68 to 70). The complexity of a mapping problem always increases with the number of "things" to be mapped, so this was an easy way to make the problem more challenging. But it is likely that the solutions used by last year's groups would cope with this year's problem as well. So I also changed the design alternatives that the students were allowed to consider. Last year, they were allowed to lower the clock frequency of the processing cores and the NoC interconnect, as long as the application tasks would not overutilise any core or interconnect link, aiming to reduce energy dissipation. But they would not be able to overclock the cores or the interconnect: in case a particular processor configuration was not fast enough to run all application tasks without overutilising the platform, their alternative was to go for a larger platform (i.e. with more cores and a larger interconnect). This year, students were allowed to overclock processing cores and/or the interconnect by up to 20%, which provided them more design alternatives to explore (e.g. overclock a smaller platform vs. underclock a larger platform). To take into account both dimensions of the design space, the quality of the solutions found by each group was ranked by the number of processing cores they needed (lower is better), and by the frequency scaling factor for cores and interconnect (lower is better).

The class was randomly divided in four groups, but due to absences each group had between 1 and 3 active members (the design contest is not a mandatory part of the embedded systems module, and does not contribute to the final mark). They were given two days to work on the design challenge, and all groups submitted a solution by the deadline. Just like in 2020, three of the solutions submitted were valid task mappings that did not overutilise the multiprocessor platform when scaling the clock frequency by the submitted factors (one of the groups submitted only a partial mapping that did not include all tasks, so it could not be evaluated). The valid solutions submitted by groups 2, 3 and 4 required platforms with 20, 36 and 18 cores, respectively. With a smaller number of cores, group 4 was named the winner even when taking into account the frequency scaling factors used by each group. Below, a photo with the members of group 4 David Kacs and Ben Marsh (and their prize).

Again this year, I decided to award a honourable mention. This time it goes to group 2, which was actually a one-member-group, but still managed to submit a valid solution that was only marginally worse than the winning solution (20 cores running at nominal frequency, while the winners used 18 overclocked cores). Below, a photo of Aaron Christiansen, with no prize but with the recognition of being the first ever person to single-handedly complete the EMBS design contest.
Perhaps because of the additional complexity I added to the challenge, this year no group managed to find a solution that was as good as the solution I created prior to the contest (using the technique I described in last year's post). My solution requires only 16 cores, but needs a small overclocking of cores as well as the NoC interconnect. I did not share that solution with them, and instead left it as an open-ended challenge. I'm sure someone will be pleased to send me an email over the winter break showing that they could beat me...

The post on the design contest is always closed with links to the now famous EMBS Design Contest Hall of Fame, with pictures of the top teams from all previous contests: 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2012, 2011, 2010 (in 2013, no group managed to finish the challenge on time).

Tuesday 30 November 2021

Safe, Ethical and Secure (Embedded) Computing

A couple years ago, I was tasked by my department to put together an innovative programme to train PhD students. After doing a consultation with all colleagues in our research away day in 2019, I could see a scenario that went completely against the picture of a stereotypical PhD student as a lonely character working on a hermetic topic which they carefully hide from the world until they can publish it causing fanfare and/or Earth-shattering consequences. Instead, what emerged was the desire for a strong sense of community, and emphasis on resilience and mutual support. Among the research topics we should emphasise, the list that emerged included green computing, explainable and safe AI, trustworthy decision-making in humans and machines, and ethical digital technologies. This was a very valuable exercise, and helped us in understanding the long term aspirations of the department in terms of research.

But then the covid 19 pandemic happened, and all research activities in the department were deprioritised so we had enough manpower to cope with the heavy workload caused by the move into online teaching. The plans for the innovative doctoral traning were suspended, and only resumed in early 2021. By then, with Paul Cairns as the new head of department and Ibrahim Habli as deputy head for research, the long term research vision for the department had been aptly summarised as safe, ethical and secure computing. And the new doctoral training centre was chosen to be a key instrument in realising that view, providing fully-funded studentships to students willing to work on high-impact research in those areas. So I took on the challenge and, with excellent support from the department's admissions team, managed to advertise, interview and recruit the first batch of PhD students for SEtS, the department's Doctoral Centre for Safe, Ethical and Secure Computing. They started their journey towards a PhD two months ago, and their topics cover areas as diverse as machine learning for cocoa plant disease identification, wireless networking for swarm robotics, monetisation strategies and player well-being in online gaming, and formal proofs for security-related properties in robotic systems. Interestingly, two of them are former EMBS students, and one of them appears in the EMBS Design Contest hall of fame! I am now meeting them on a weekly basis, trying out a number of new training initiatives, and gathering feedback on how to improve the training process for future cohorts.

So while the focus of the doctoral centre is much wider, there are many opportunities for research work in the area of embedded systems. The application process will be open over the next two months, so feel free to contact me if you are interested in pursuing a PhD in our doctoral centre. I'll be happy to discuss a potential research topic, or to introduce you to colleagues that do work in the areas you might be interested in. Find more details about my research areas, and my contact information, here.

Who would not want to be part of a centre with the acronym SEtS and with a Venn diagram showing the intersection of its three main areas as its logo?