Blended Agile Learning of Computer Architecture under COVID
- Authors: Machanick, Philip
- Date: 2023
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439141 , vital:73550 , https://www.researchgate.net/profile/Grant-Ooster-wyk/publication/375547243_Beyond_the_Hype_A_Cautionary_Tale_of_ChatGPT_in_the_Programming_Classroom/links/654e3009b1398a779d76a75e/Beyond-the-Hype-A-Cautionary-Tale-of-ChatGPT-in-the-Programming-Classroom.pdf#page=45
- Description: The COVID-19 pandemic presented unique challenges. 2021 was an interesting year because we had overcome the worst of the teething problems of remote learning but were able to resume some in-person activities. I present experiences from a second-year computer architecture course that I have taught since 2014 to illustrate that some lessons from operating under pandemic conditions can apply to running courses under more normal conditions. 2021 was an interesting year because we reintroduced in-person pracs partway through this course, allowing students to reflect on the difference this made. Reflection on what did and did not work in the course points to possible improvements in pedagogy in more “normal” times. In isolation, the very positive feedback in a course survey may be flattering but there are useful insights to be drawn from what worked. Drawing on ideas from the social construction model of education, where students should be actively involved in learning, and agile software development, results in some insights that may generalize. The kind of feedback that is part of agile development can be layered on top of formative assessment. Empathy with difficulties faced by a class can make a class more involved in the strategy for course delivery. In 2022, without COVID constraints, some of the lessons were applied with positive outcomes.
- Full Text:
- Date Issued: 2023
The Case for a Cray on a Chip
- Authors: Machanick, Philip
- Date: 2023
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439277 , vital:73561 , https://www.researchgate.net/profile/Siphamandla-Mncu-be/publication/375376322_Shadow_Information_Technology_in_the_Advent_of_Open_Educational_Resources/links/65485042ce88b87031c92188/Shadow-Information-Technology-in-the-Advent-of-Open-Educational-Resources.pdf#page=22
- Description: Moore’s Law is usually interpreted as a prediction of how many transistors you can buy for the same money at some future date. It can also be interpreted as how long you need to wait until a given number of transistors falls below a target price. An example of this reverse-application of Moore’s Law is transitions such as the emergence of microprocessors competitive with traditional larger-scale computers and the emergence of smartphones. Since the late 1990s, it has become increasingly common for growth in transistors to equate to more CPUs (cores) per die. Recent designs have over 50 billion transistors and far more potential parallelism than can be supported by memory. I argue the case for a rebalancing of design goals with a much larger, faster on-chip memory and a CPU that is designed around this memory system. The proposal: a Cray-class vector CPU on a die with 1 Gibyte of static RAM, or Crayon (for Cray on a chip). The kind of organization classically used by Cray vector supercomputers is feasible to achieve on a single chip. I argue that a design like this can use the available memory bandwidth, as opposed to over-CPU designs with a large number of cores and GPU threads that are memory limited and propose how such a design could be used.
- Full Text:
- Date Issued: 2023
Principles of Computer Architecture
- Authors: Machanick, Philip
- Date: 2022
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439184 , vital:73553 , https://homes.cs.ru.ac.za/philip/Courses/CSHonsArch/HonsArchNotes2022.pdf
- Description: Last week, Control Data ... announced the 6600 system. I understand that in the laboratory developing the system there are only 34 people including the janitor. Of these, 14 are engineers and 4 are programmers... Contrasting this modest effort with our vast development activities, I fail to understand why we have lost our industry leadership position by letting someone else offer the world’s most powerful computer – Thomas Watson Jr., IBM CEO, August 1963 It seems like Mr. Watson has answered his own question – Seymour Cray
- Full Text:
- Date Issued: 2022
The extent and impact of variation in ADME genes in sub-Saharan African populations
- Authors: da Rocha, Jorge E B , Othman, Houcemeddine , Botha, Gerrit , Cottino, Laura , Twesigomwe, David , Ahmed, Samah , Drögemöller, Britt I , Fadlelmola, Faisal M , Machanick, Philip , Mbiyavanga, Mamana , Panji, Sumir , Wright, Galen E B , Adebamowo, Clement , Matshaba, Mogomotsi , Ramsay, Michéle , Simo, Gustave , Simuunza, Martin C , Tiemessen, Caroline T , Baldwin, Sandra , Chiano, Mathias , Cox, Charles , Gross, Annette S , Thomas, Pamela , Gamo, Francisco-Javier , Scott Hazelhurst
- Date: 2022
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439202 , vital:73555 , https://homes.cs.ru.ac.za/philip/Courses/CSHonsArch/HonsArchNotes2022.pdf
- Description: Investigating variation in genes involved in the absorption, distribution, metabolism, and excretion (ADME) of drugs are key to characterizing pharmacogenomic (PGx) relationships. ADME gene variation is relatively well characterized in European and Asian populations, but data from African populations are under-studied—which has implications for drug safety and effective use in Africa.
- Full Text:
- Date Issued: 2022
A preliminary study of minimal-contention locks
- Authors: Machanick, Philip , Mbiyavanga, Mamana
- Date: 2018
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439093 , vital:73544 , https://doi.org/10.1145/3278681.3278713
- Description: As multicore CPUs become more common, scalable synchronization primitives have wider use and ideas previously used in large-scale computation are worth re-opening for wider use. In this paper I explore one approach to scalable synchronization, a minimal-contention lock (M-lock). The key idea is to avoid spinning on a global variable but instead for each blocked task (process or thread) to spin on a local lock representing the task that immediately preceded it in attempting to acquire the lock. This creates an ordering based on the order in which tasks attempt to acquire the lock, preventing starvation. The only globally shared variable is a pointer to the next local lock to be contended for. Each contending task swaps the value of this pointer for a pointer to its own variable. It spins on the variable previously pointed to by the global pointer. Each waiting task spins on a lock only seen by itself and the owner of that lock variable. While a task is spinning, the lock variable can be held in its local cache until invalidated by the lock owner when it unsets the lock. Consequently, the amount of bus traffic is considerably less than with a spinlock, which has the pernicious feature that the task releasing the lock is delayed by all the other bus traffic arising from contention for the lock. An MCS lock has similar properties but is more complicated and requires more memory contention-causing operations. This paper outlines the design of the M-lock and provides a preliminary performance analysis.
- Full Text:
- Date Issued: 2018
Project CrayOn: Back to the future for a more General-Purpose GPU
- Authors: Machanick, Philip
- Date: 2018
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439353 , vital:73569 , http://wp3workshop.website/pdfs/WP3_machanick.pdf
- Description: General purpose of use graphics processing units (GPGPU) recapitulates many of the lessons of the early generations of supercomputers. To what extent have we learnt those lessons, rather than repeating the mistakes? To answer that question, I review why the Cray-1 design ushered in a succession of successful supercomputer designs, while more exotic modes of parallelism failed to gain traction. In the light of this review, I propose that new packaging breakthroughs create an opening for revisiting our approach to GPUs and hence GPGPU. If we do not do so now, the GPU endpoint–when no GPU enhancement will be perceptible to human senses–will in any case remove the economic incentive to build ever-faster GPUs and hence the economy of scale incentive for GPGPU. Anticipating this change now makes sense when new 3D packaging options are opening up; I propose one such option inspired by packaging of the Cray-1.
- Full Text:
- Date Issued: 2018
Back to good health
- Authors: Machanick, Philip
- Date: 2017
- Language: English
- Type: article , text
- Identifier: http://hdl.handle.net/10962/61144 , vital:27984 , http://dx.doi.org/10.18489/sacj.v29i3.565
- Description: From introduction: We have a bumper issue, with eleven research papers and one letter to the editor. 2016 was a difficult year for academia in South Africa with highly disruptive protests. 2017 was mostly better from that point of view, though the protest movement has not completely gone away. This issue contains some papers that were submissions to special issues that were not ready in time and hence to some extent is a catch-up issue. In previous issues this year, 29(1), published in July, contained nine research papers, of which five were extended papers from the 2016 SAICSIT annual conference. There was also a special issue on ICT in Education published in October, 29(2), which had five research papers. Two papers from the ICT in Education special issue spilled over to this issue. Overall, we have published 25 research papers this year, compared with four in 2016, fourteen in 2015 and nineteen in 2014. Numbers are therefore looking healthy again; I hope the underlying causes of protest are addressed so we do not have to endure another year like 2016. In the remainder of this editorial, I give an update on the effects of indexing in Scopus, list papers in this issue and end with changes in the editorial team.
- Full Text:
- Date Issued: 2017
Challenges with modelling transcription factor binding
- Authors: Machanick, Philip , Kibet, Caleb K
- Date: 2017
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439158 , vital:73551 , 10.1109/NEXTCOMP.2017.8016178
- Description: Modelling transcription factor binding presents a number of challenges. In its simplest form, binding can be modelled by a consensus sequence but a number of factors including degeneracy of binding sites, alternative modes of binding and differences between artificially-constructed and in vivo DNA make modelling binding complex. In this paper we outline difficulties and report on progress with improving modelling of binding. We focus on improving measurement of binding models, a necessary prerequisite for finding better models.
- Full Text:
- Date Issued: 2017
Data structures and algorithms for bioinformatics
- Authors: Machanick, Philip
- Date: 2017
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439172 , vital:73552 , https://homes.cs.ru.ac.za/philip/Courses/BioinfMScAlgorithms/BioinfAlgorithms.pdf
- Description: WHY THIS MATERIAL? Bioinformatics is a difficult subject because it integrates so much from multiple disciplines. The emphasis here is on algorithmic thinking–working from a problem to an implementation while thinking analytically about efficiency concerns. The picture illustrates a general plan for algorithmic thinking. Anything that can be classed as an algorithm can be analysed and your design choices are not always to find the most efficient algorithm possible. The aim is to solve a problem as efficiently as possible; if it is something you do only once, that results in a rather different set of choices than if you are going to do it many times. And–of course–size counts. That is what this course is am I doing this once
- Full Text:
- Date Issued: 2017
The FOXP2 forkhead domain binds to a variety of DNA sequences with different rates and affinities
- Authors: Webb, Helen , Steeb, Olga , Blane, Ashleigh , Rotherham, Lia , Aron, Shaun , Machanick, Philip , Dirr, Heinrich W , Fanucchi, Sylvia
- Date: 2017
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439326 , vital:73567 , https://doi.org/10.1093/jb/mvx003
- Description: FOXP2 is a member of the P subfamily of FOX transcription factors, the DNA-binding domain of which is the winged helix forkhead domain (FHD). In this work we show that the FOXP2 FHD is able to bind to various DNA sequences, including a novel sequence identified in this work, with different affinities and rates as detected using surface plasmon resonance. Combining the experimental work with molecular docking, we show that high-affinity sequences remain bound to the protein for longer, form a greater number of interactions with the protein and induce a greater structural change in the protein than low-affinity sequences. We propose a binding model for the FOXP2 FHD that involves three types of binding sequence: low affinity sites which allow for rapid scanning of the genome by the protein in a partially unstructured state; moderate affinity sites which serve to locate the protein near target sites and high-affinity sites which secure the protein to the DNA and induce a conformational change necessary for functional binding and the possible initiation of downstream transcriptional events.
- Full Text:
- Date Issued: 2017
Video on demand in a high bandwidth world
- Authors: Machanick, Philip
- Date: 2017
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439121 , vital:73546 , https://doi.org/10.1145/3129416.3129424
- Description: Video on Demand (VoD) is a challenging area requiring complex server and distributed systems architectures. In this paper I describe an alternative implementation of VoD that exploits the growing affordability of fibre bandwidth to remove the latency problems of scaling up VoD. I call the general principle Information Mass Transit (IMT). By analogy with regular mass transit, making all traffic move in bulk without individual service variation makes for a much more efficient system. The core idea is to broadcast the same movie repeatedly at short intervals. To explicate the design, I set this interval at 1 minute, implying a latency of up to a minute to start a movie. However, this latency can be disguised if a user has a catalogue of movies that includes the first minute of each. Provided the number of users is much higher than the number of movies, this approach is affordable in terms of bandwidth and totally removes any need for servers or network infrastructure, beyond new connections for new users, to scale with the number of users. I call this approach Scalable Architecture for Video on Demand or SAVoD.
- Full Text:
- Date Issued: 2017
2OS
- Authors: Machanick, Philip
- Date: 2016
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439214 , vital:73556 , https://homes.cs.ru.ac.za/philip/Courses/CS2-OS/Cs2ToOS.pdf
- Description: In this book I approach the problem of understanding an OS from the point of view of a C programmer who needs to understand enough of how an OS works to program efficiently and avoid traps and pitfalls arising from not understanding what is happening underneath you. If you have a deep understanding of the memory system, you will not program in a style that loses significant performance by breaking the assumptions of the OS designer. If you have an understanding of how IO works, you can make good use of OS services. As you work through this book you will see other examples.
- Full Text:
- Date Issued: 2016
MARS Motif: Assessment and Ranking Suite for transcription factor binding motifs
- Authors: Kibet, Cabel K , Machanick, Philip
- Date: 2016
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439339 , vital:73568 , https://doi.org/10.1101/065615
- Description: We describe MARS (Motif Assessment and Ranking Suite), a web-based suite of tools used to evaluate and rank PWM-based motifs. The increased number of learned motif models that are spread across databases and in different PWM formats, leading to a choice dilemma among the users, is our motivation. This increase has been driven by the difficulty of modelling transcription factor binding sites and the advance in high-throughput sequencing technologies at a continually reducing cost. Therefore, several experimental techniques have been developed resulting in diverse motif-finding algorithms and databases. We collate a wide variety of available motifs into a benchmark database, including the corresponding experimental ChIP-seq and PBM data obtained from ENCODE and UniPROBE databases, respectively. The implemented tools include: a data-independent consistency-based motif assessment and ranking (CB-MAR), which is based on the idea that ‘correct motifs’ are more similar to each other while incorrect motifs will differ from each other; and a scoring and classification-based algorithms, which rank binding models by their ability to discriminate sequences known to contain binding sites from those without. The CB-MAR and scoring techniques have a 0.86 and 0.73 median rank correlation using ChIP-seq and PBM respectively. Best motifs selected by CB-MAR achieve a mean AUC of 0.75, comparable to those ranked by held out data at 0.76 – this is based on ChIP-seq motif discovery using five algorithms on 110 transcription factors. We have demonstrated the benefit of this web server in motif choice and ranking, as well as in motif discovery.
- Full Text:
- Date Issued: 2016
MARS: Motif Assessment and Ranking Suite for transcription factor binding motifs
- Authors: Kibet, Caleb K , Machanick, Philip
- Date: 2016
- Language: English
- Type: article , text
- Identifier: http://hdl.handle.net/10962/61155 , vital:27985 , http://dx.doi.org/10.1101/065615
- Description: We describe MARS (Motif Assessment and Ranking Suite), a web-based suite of tools used to evaluate and rank PWM-based motifs. The increased number of learned motif models that are spread across databases and in different PWM formats, leading to a choice dilemma among the users, is our motivation. This increase has been driven by the difficulty of modelling transcription factor binding sites and the advance in high-throughput sequencing technologies at a continually reducing cost. Therefore, several experimental techniques have been developed resulting in diverse motif-finding algorithms and databases. We collate a wide variety of available motifs into a benchmark database, including the corresponding experimental ChIP-seq and PBM data obtained from ENCODE and UniPROBE databases, respectively. The implemented tools include: a data-independent consistency-based motif assessment and ranking (CB-MAR), which is based on the idea that `correct motifs' are more similar to each other while incorrect motifs will differ from each other; and a scoring and classification-based algorithms, which rank binding models by their ability to discriminate sequences known to contain binding sites from those without. The CB-MAR and scoring techniques have a 0.86 and 0.73 median rank correlation using ChIP-seq and PBM respectively. Best motifs selected by CB-MAR achieve a mean AUC of 0.75, comparable to those ranked by held out data at 0.76 { this is based on ChIP-seq motif discovery using five algorithms on 110 transcription factors. We have demonstrated the benefit of this web server in motif choice and ranking, as well as in motif.
- Full Text:
- Date Issued: 2016
Teaching operating systems: just enough abstraction
- Authors: Machanick, Philip
- Date: 2016
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439265 , vital:73560 , https://doi.org/10.1007/978-3-319-47680-3_10
- Description: There are two major approaches to teaching operating systems: conceptual and detailed. I explore the middle ground with an approach designed to equip students with the tools to explore detail later as the need arises, without requiring the time and grasp of detail needed to understand a full OS implementation. To meet those goals, I apply various strategies to different concepts, for example, faking the detail and using techniques from computer architecture simulation. The course aims to give students a better sense of how things work than a conceptual approach without the time required for a full implementation-based course.
- Full Text:
- Date Issued: 2016
Transcription factor motif quality assessment requires systematic comparative analysis
- Authors: Kibet, Cabel K , Machanick, Philip
- Date: 2016
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439366 , vital:73570 , https://f1000research.com/articles/4-1429
- Description: Transcription factor (TF) binding site prediction remains a challenge in gene regulatory research due to degeneracy and potential variability in binding sites in the genome. Dozens of algorithms designed to learn binding models (motifs) have generated many motifs available in research papers with a subset making it to databases like JASPAR, UniPROBE and Transfac. The presence of many versions of motifs from the various databases for a single TF and the lack of a standardized assessment technique makes it difficult for biologists to make an appropriate choice of binding model and for algorithm developers to benchmark, test and improve on their models. In this study, we review and evaluate the approaches in use, highlight differences and demonstrate the difficulty of defining a standardized motif assessment approach. We review scoring functions, motif length, test data and the type of performance metrics used in prior studies as some of the factors that influence the outcome of a motif assessment. We show that the scoring functions and statistics used in motif assessment influence ranking of motifs in a TF-specific manner. We also show that TF binding specificity can vary by source of genomic binding data. We also demonstrate that information content of a motif is not in isolation a measure of motif quality but is influenced by TF binding behaviour. We conclude that there is a need for an easy-to-use tool that presents all available evidence for a comparative analysis.
- Full Text:
- Date Issued: 2016
Transcription factor motif quality assessment requires systematic comparative analysis [version 2; referees: 2 approved]
- Authors: Kibet, Caleb K , Machanick, Philip
- Date: 2016
- Language: English
- Type: article , text
- Identifier: http://hdl.handle.net/10962/61169 , vital:27987 , http://dx.doi.org/10.12688/f1000research.7408.2
- Description: Transcription factor (TF) binding site prediction remains a challenge in gene regulatory research due to degeneracy and potential variability in binding sites in the genome. Dozens of algorithms designed to learn binding models (motifs) have generated many motifs available in research papers with a subset making it to databases like JASPAR, UniPROBE and Transfac. The presence of many versions of motifs from the various databases for a single TF and the lack of a standardized assessment technique makes it difficult for biologists to make an appropriate choice of binding model and for algorithm developers to benchmark, test and improve on their models. In this study, we review and evaluate the approaches in use, highlight differences and demonstrate the difficulty of defining a standardized motif assessment approach. We review scoring functions, motif length, test data and the type of performance metrics used in prior studies as some of the factors that influence the outcome of a motif assessment. We show that the scoring functions and statistics used in motif assessment influence ranking of motifs in a TF-specific manner. We also show that TF binding specificity can vary by source of genomic binding data. We also demonstrate that information content of a motif is not in isolation a measure of motif quality but is influenced by TF binding behaviour. We conclude that there is a need for an easy-to-use tool that presents all available evidence for a comparative analysis.
- Full Text:
- Date Issued: 2016
How general-purpose can a GPU be?
- Authors: Machanick, Philip
- Date: 2015
- Language: English
- Type: article , text
- Identifier: http://hdl.handle.net/10962/61180 , vital:27988 , http://dx.doi.org/10.18489/sacj.v0i57.347
- Description: The use of graphics processing units (GPUs) in general-purpose computation (GPGPU) is a growing field. GPU instruction sets, while implementing a graphics pipeline, draw from a range of single instruction multiple datastream (SIMD) architectures characteristic of the heyday of supercomputers. Yet only one of these SIMD instruction sets has been of application on a wide enough range of problems to survive the era when the full range of supercomputer design variants was being explored: vector instructions. Supercomputers covered a range of exotic designs such as hypercubes and the Connection Machine (Fox, 1989). The latter is likely the source of the snide comment by Cray: it had thousands of relatively low-speed CPUs (Tucker & Robertson, 1988). Since Cray won, why are we not basing our ideas on his designs (Cray Inc., 2004), rather than those of the losers? The Top 500 supercomputer list is dominated by general-purpose CPUs, and nothing like the Connection Machine that headed the list in 1993 still exists.
- Full Text:
- Date Issued: 2015
How General-Purpose can a GPU be?
- Authors: Machanick, Philip
- Date: 2015
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439294 , vital:73563 , https://hdl.handle.net/10520/EJC181693
- Description: The use of graphics processing units (GPUs) in general-purpose computation (GPGPU) is a growing field. GPU instruction sets, while implementing a graphics pipeline, draw from a range of single instruction multiple data stream (SIMD) architectures characteristic of the heyday of supercomputers. Yet only one of these SIMD instruction sets has been of application on a wide enough range of problems to survive the era when the full range of supercomputer design variants was being explored: vector instructions.
- Full Text:
- Date Issued: 2015
Mips2C: programming from the machine up
- Authors: Machanick, Philip
- Date: 2015
- Subjects: To be catalogued
- Language: English
- Type: text , article
- Identifier: http://hdl.handle.net/10962/439226 , vital:73557 , https://homes.cs.ru.ac.za/philip/Courses/CS2-arch-C/Cs2MIPS2C.pdf
- Description: WHY THIS BOOK? Some years ago I took part in a panel discussion titled “Programming Early Considered Harmful” at the SIGCSE 2001 conference [Hitchner et al. 2001]. Once of those present was Yale Patt, whom I had met briefly on a sabbatical at University of Michigan, where he was at the time a professor working in computer architecture. His role on the panel was to proselytise his book, Introduction to Computing Systems: From bits and gates to C and beyond [Patt and Patel 2013], which introduced programming from the low level up. I found the idea intriguing particularly as I also was concerned with the problem that students tend to stick with the first thing they learn. If my concern was correct, it should be better to start with the programming model you want them to internalize, rather than start with machine level programming. Nonenetheless, I am always open to new ideas, and when the opportunity presented itself to run a computer organization course followed by a C course, I decided to try the idea for myself.
- Full Text:
- Date Issued: 2015