Clustering with Openmosix

Total Page:16

File Type:pdf, Size:1020Kb

Clustering with Openmosix Clustering with openMosix M. Michels & W. Borremans February 2005 Master program System and Network Engineering University of Amsterdam Abstract openMosix is a Linux kernel extension for single-system image clustering which turns a network of ordinary computers into a supercomputer. This project fo- cuses on the performance, reliability and characteristics of openMosix. We also asked ourselves where it could be implemented. There are some limitations with a openMosix cluster. We have our remarks looking at the reliability of the cluster application. According to our findings threaded applications can be used, though the threads will not be distributed over the cluster. This means no increase of performance. Due to the large amount of programs that actually use these kinds of programming models, not many applications can be used. The performance of the cluster dramatically drops when adding more then 12 nodes. The cluster’s stability is depended on all nodes, when one node fails the complete cluster could crash. Clustering with openMosix - M. Michels & W. Borremans 1 Contents 1 Introduction 3 1.1 Related work 3 1.2 What is a cluster? 3 1.3 What is openMosix? 5 1.3.1 openMosix vs Beowulf 5 1.4 Why openMosix? 6 2 Methods 7 2.1 Hardware being used 7 2.2 Applications being used 8 2.2.1 Povray 8 2.2.2 Encryption 8 2.2.3 Compiling 9 2.2.4 Synthetic benchmark 9 2.3 Collecting the test data 9 2.4 Reliability testing 10 3 Results 10 3.1 Experiments 10 3.1.1 Povray 10 3.1.2 Encryption 11 3.1.3 Compiling 12 3.1.4 Synthetic benchmark 12 3.1.5 Other benchmarks 12 3.2 Reliability 12 4 Discussion 13 4.1 Threads and Processes 13 4.2 Latency 14 4.3 Summary 16 4.4 Future work 17 A Source shellscipt Encryption benchmark 19 B Source shellscipt starting RSA bechmark 20 Clustering with openMosix - M. Michels & W. Borremans 2 1 Introduction This document describes the findings in the openMosix[1] project carried out in order of the RP1 subject of the ’System and Network Engineering[23]’ course at the University of Amsterdam[24]. The project is carried out by Maarten Michels[25] and Wouter Borremans[26] and is supervised by Harris Sunyoto[27]. This project focuses on the performance, reliability and characteristics of open- Mosix in which we will try to answer the following questions: • Performance - Is the performance linear according to the number of nodes? - What kind of applications will benefit from openMosix? • Reliability What happens if a specific part of a node fails? • Network load How is the network load related to the number of nodes? Depending on the answers of the above stated questions, we will conclude if openMosix is suitable in our field of study. In this report we will first explain what exactly a cluster is, after that we will continue to focus on openMosix. 1.1 Related work As the popularity of openMosix is increasing, more and more people are start- ing to do experiments with it. We found several sites on which we could find reports of the experiments. • Creating a low latency high performance gameservers[19] - Democritos[20] - Italian researchers tried to build a gameserver cluster using open- Mosix. • openMosix Cluster - University of Kiev[21] -created for solving scientific and applied problems that require large computing power and operate with large volumes of information. We were unable to find reports on performance numbers and reliability infor- mation on openMosix, we started some testing of our own. 1.2 What is a cluster? Definition according to an English dictionary: cluster; bunch, clump, cluster, clustering – (a grouping of a number of similar things; ”a bunch of trees”; ”a cluster of admirers”) A cluster is a type of parallel or distributed processing system, which consists of a collection of interconnected stand-alone computers cooperatively working together as a single integrated computing resource. Clustering with openMosix - M. Michels & W. Borremans 3 These jobs vary from complex mathematical problems to generating high res- olution images. Jobs like searching for extraterrestrial intelligence[2] are a well known projects in which multiple computers connected over the internet are working together on just one project. When designing a cluster in general, there are a few goals to achieve; • Complete transparency - Single entry point, think of FTP NFS etc. • Scalable performance - Easy growth, the ability to expand your cluster with new machines continuously. • Enhanced availability - Automatic recovery from failures, when a node fails the cluster au- tomatically reruns the failed job. The most used technique to build up a cluster is SSI (Single System Image). SSI is the illusion created by software and hardware that represents a collection of computing resources as one, more whole resource. SSI makes the cluster appear like a single machine to the user, to applications and to the network. Depending on the job you have to carry out, different kinds of clusters are applicable; HTC High Throughput Cluster - Primary used for serial applications (i.e. open- Mosix) HPC High Performance Cluster - Most of the times used in the computational science, think of clusters that carry out jobs of Shell or the Mathematics department of the University of Amsterdam. SSI makes the use of system resources transparent and will offer improved system response time and performance. It simplifies the management because the system administrator does not have to know the underlying system archi- tecture to use the machines effectively. Computers in clusters are interconnected by a network, the network is -besides the nodes- the most important part of cluster. The network is the limit of the cluster, this means the higher the bandwidth the higher the performance of the cluster will be. The currently most used networks of 100Mbit and 1Gbit are in most cases not sufficient anymore. Other types of networks are available to face the need for higher bandwidth; SCI (Dolphin), Qsnet, Myrinet and In- finiband. These types of networks offer extreme high bandwidth with extreme low latency1. In general, the computer communication ratio in a parallel program remains fairly constant. If the computional power increases, the network speed must be increased also. 1. Latency is discussed in chapter 4.2 Clustering with openMosix - M. Michels & W. Borremans 4 1.3 What is openMosix? openMosix is a Linux kernel extension for single-system image clustering. This kernel extension turns a network of ordinary computers into a supercomputer for Linux applications. Once you installed openMosix, the nodes in the cluster will start talking to each other by exchanging messages. The cluster adapts itself to the workload. openMosix adds cluster functionality to any Linux flavor. openMosix uses adaptive load balancing techniques, processes that run on a node can trans- parently be distributed to one another. Due to the complete transparency of openMosix, a process does not have to know where it is running. The process ’thinks’ that it is running locally. In this case, this transparency means that no additional programming is needed to take advantage of the openMosix load-balancing technology. This is a great and powerful feature of openMosix, it really lives up it’s name. openMosix turns multiple Linux hosts into one large virtual SMP (Symmetric Multi Pro- cessor). Real SMP systems with two or more physical processors can exchange large amounts of data, in practice this means that real SMP systems are much faster. With openMosix, the speed at which the nodes can exchange data is lim- ited to the speed of the LAN connection. Using a high bandwidth connection will increase the effectiveness of your openMosix cluster. Another great advantage of openMosix is the ability to build a cluster out of inexpensive hardware giving you a traditional supercomputer. openMosix can also be used with performance enhancing techniques like Hyper- Threading[4] available on intel Pentium 4 and Xeon processors. Using this technique enables you to enhance the performance of a node. The node can now handle multiple cooperating threads that cannot be separated and dis- tributed among openMosix nodes. Use of the technologies mentioned may re- sult in significant performance increase. Besides the use of openMosix on Hyper-Threading systems, it has efficient par- allelization algorithms of its own. 1.3.1 openMosix vs Beowulf Together with openMosix, Beowulf[5] is one of the most well known cluster applications. The Beowulf project was started by Donald Becker in early 1994 at the NASA Goddard Space Flight Center. NASA was looking for a solution to build a cluster out of relatively inexpensive hardware. They ended up in using Beowulf to beat Grendel[6] .The project gained great popularity of other NASA research groups. The number of Beowulf clusters has grown relatively fast over the past few years. Clustering with openMosix - M. Michels & W. Borremans 5 There are some fundamental differences between the main structure of the two programs. A great disadvantage of Beowulf clusters comparing to openMosix is that only programs written using the PVM (Parallel Virtual Machine) and MPI (Message Passing Interface) libraries are supported. The PVM and MPI libraries are the most used libraries by programmers which program for clus- ters. The PVM and MPI libraries allow computing problems to be solved at a rate that scales almost linearly in relation to the number of nodes in the cluster. Since PVM and MPI programming is quite complex, these kind of techniques will only be used in small dedicated communities. We can conclude that for the ’regular’ cluster user Beowulf may be a little too complicated due to it’s special needs, with openMosix the user does not need to worry about the pro- gram structure.
Recommended publications
  • Instalación Y Configuración De Un Cluster De Alta Disponibilidad Con Reparto De Carga
    UNIVERSIDAD POLITÉCNICA DE VALENCIA Máster en Ingeniería de Computadores INSTALACIÓN Y CONFIGURACIÓN DE UN CLUSTER DE ALTA DISPONIBILIDAD CON REPARTO DE CARGA SERVIDOR WEB Y MAQUINAS VIRTUALES Alumno: Lenin Alcántara Roa. Director: Pedro López Rodríguez. Febrero 2014 Febrero de 2014 2 Universidad Politécnica de Valencia Febrero de 2014 ÍNDICE 1. INTRODUCCIÓN 5 1.1. Objetivos 6 1.2. Motivación 6 1.3. Resumen 6 2. ESTADO DEL ARTE 7 2.1. ¿Qué es un Cluster? 7 2.2. Clustering de Alta Disponibilidad con Linux 15 2.3. Sistemas Operativos 17 3. ENTORNO TECNOLOGICO 28 3.1. Programación Bash 28 3.2. Servidor DNS 29 3.3. Servidor NFS 29 3.4. Servidor DHCP 30 3.5. Servidor PXE 32 3.6. Servicio dnsmasq 34 3.7. Servicio NIS 35 3.8. Condor 36 3.9. MPI 37 3.10. Almacenamiento RAID 38 3.11. Servicio LVS 42 3.12. Alta Disponibilidad: Corosync, Pacemaker y ldirectord 43 3.13. Virtualización con Linux 44 4. DESCRIPCIÓN DE LA SOLUCIÓN 47 4.1. Configuración del Cluster 48 4.2. Instalación del Sistema Operativo en el Cluster 50 4.3. Administración del Sistema 59 4.4. Almacenamiento 65 4.5. Equilibrado de Carga 66 4.6. Alta Disponibilidad 68 4.7. Sistema de Máquinas Virtuales 70 5. PRUEBAS 73 5.1. Servidor Web 73 5.1.1. Reparto de Carga 73 5.1.2. Alta Disponibilidad 77 5.1.3. Evaluación del Servidor Web 80 5.2. Sistema de Máquinas Virtuales 84 6. CONCLUSIONES 89 6.1. Trabajo Futuro 90 7. BIBLIOGRAFÍA 91 Universidad Politécnica de Valencia 3 Febrero de 2014 4 Universidad Politécnica de Valencia Febrero de 2014 1.
    [Show full text]
  • Clustering with Openmosix
    Clustering with openMosix Maurizio Davini (Department of Physics and INFN Pisa) Presented by Enrico Mazzoni (INFN Pisa) Introduction • What is openMosix? – Single-System Image – Preemptive Process Migration – The openMosix File System (MFS) • Application Fields • openMosix vs Beowulf • The people behind openMosix • The openMosix GNU project • Fork of openMosix code 12/06/2003 HTASC 2 The openMosix Project MileStones • Born early 80s on PDP-11/70. One full PDP and disk-less PDP, therefore process migration idea. • First implementation on BSD/pdp as MS.c thesis. • VAX 11/780 implementation (different word size, different memory architecture) • Motorola / VME bus implementation as Ph.D. thesis in 1993 for under contract from IDF (Israeli Defence Forces) • 1994 BSDi version • GNU and Linux since 1997 • Contributed dozens of patches to the standard Linux kernel • Split Mosix / openMosix November 2001 • Mosix standard in Linux 2.5? 12/06/2003 HTASC 3 What is openMOSIX • Linux kernel extension (2.4.20) for clustering • Single System Image - like an SMP, for: – No need to modify applications – Adaptive resource management to dynamic load characteristics (CPU intensive, RAM intensive, I/O etc.) – Linear scalability (unlike SMP) 12/06/2003 HTASC 4 A two tier technology 1. Information gathering and dissemination – Support scalable configurations by probabilistic dissemination algorithms – Same overhead for 16 nodes or 2056 nodes 2. Pre-emptive process migration that can migrate any process, anywhere, anytime - transparently – Supervised by adaptive
    [Show full text]
  • The Openmosix Resource Sharing Algorithms Are Designed to Respond On-Line to Variations in the Resource Usage Among the Nodes
    Institute of Fundamental Technological Research, Polish Academy of Sciences, Department of Mechanics and Physics of Fluids Documentation on Linux clustering with openMosix Version 1.0.1 Supervisor of the project: Tomasz Kowalewski Administration: Piotr Matejek Technical performers: Ihor Trots & Vasyl Kovalchuk Cluster’s web page: http://fluid.ippt.gov.pl/mosix/ Warsaw, 2004 Table of contents: 1 OpenMosix …………………………………………………….. 3 1.1 Installing openMosix ……………………………………….. 4 1.2 Configuration steps openMosix …………………………… 8 1.3 OpenMosix in action ……………………………………….. 10 1.4 OpenMosixview …………………………………………….. 11 2 Masquerading and IP-tables ………………………………... 14 2.1 Applying iptables and Patch-o-Matic kernel patches 15 2.2 Configuring IP Masquerade on Linux 2.4.x Kernels …. 22 3 Parallel Virtual Machine PVM ………………………………. 29 3.1 Building and Installing ……………………………………… 29 3.2 Running PVM Programs .................................................. 32 4 Message Passing Interface MPI ………………………….… 34 4.1 Configuring, Making and Installing .................................. 34 4.2 Programming Tools ......................................................... 38 4.3 Some details ……………………………………….……….. 41 5 References …………………………………………………….. 46 2 1 OpenMosix Introduction OpenMosix is a kernel extension for single-system image clustering. Clustering technologies allow two or more Linux systems to combine their computing resources so that they can work cooperatively rather than in isolation. OpenMosix is a tool for a Unix-like kernel, such as Linux, consisting of adaptive resource sharing algorithms. It allows multiple uniprocessors and symmetric multiprocessors (SMP nodes) running the same kernel to work in close cooperation. The openMosix resource sharing algorithms are designed to respond on-line to variations in the resource usage among the nodes. This is achieved by migrating processes from one node to another, preemptively and transparently, for load-balancing and to prevent thrashing due to memory swapping.
    [Show full text]
  • Lives Video Editor
    GABRIEL FINCH LiVES: LiVES is a Video Editing System RECIFE-PE – JULHO/2013. UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE PESQUISA E PÓS-GRADUAÇÃO PROGRAMA DE PÓS-GRADUAÇÃO EM INFORMÁTICA APLICADA LiVES: LiVES is a Video Editing System Dissertação apresentada ao Programa de Pós-Graduação em Informática Aplicada como exigência parcial à obtenção do título de Mestre. Área de Concentração: Engenharia de Software Orientador: Prof. Dr. Giordano Ribeiro Eulalio Cabral RECIFE-PE – JULHO/2013. Ficha Catalográfica F492L Finch, Gabriel LiVES: LiVES is a video editing system / Gabriel Finch. -- Recife, 2013. 132 f. Orientador (a): Giordano Cabral. Dissertação (Mestrado em Informática Aplicada) – Universidade Federal Rural de Pernambuco, Departamento de Estatísticas e Informática, Recife, 2013. Inclui referências e apêndice. 1. Software - Desenvolvimento 2. Prototipagem 3. Multimídia 4. Usuários de computador 5. Vídeo digital I. Cabral, Giordano, orientador II. Título CDD 005.1 ACKNOWLEDGEMENTS The author would like to thank: The staff and students at UFRPE. All the LiVES users and contributors. My family. and the following, who have helped along the way: Niels Elburg, Denis "Jaromil" Rojo, Tom Schouten, Andraz Tori, Silvano "Kysucix" Galliani, Kentaro Fukuchi, Dr. Jun Iio, Oyvind Kolas, Carlo Prelz, Yves Degoyon, Lady Xname, timesup.org, LinuxFund, VJ Pixel, estudiolivre, mediasana, Felipe Machado, elphel.com. RESUMO Relativamente pouca pesquisa científica tem sido executado até à data atinente aos requisitos dos usuários de aplicativos de processamento de vídeo. Nesta dissertação, apresentamos um novo termo "Experimental VJ", e examinamos os requisitos de software para essa classe de usuário, derivados de uma variedade de fontes. Por meios desses requisitos, definimos os atributos que seria necessário um programa criado para satisfazer essas demandas possuir.
    [Show full text]
  • Load Balancing Experiments in Openmosix”, Inter- National Conference on Computers and Their Appli- Cations , Seattle WA, March 2006 0 0 5 4 9
    Machine Learning Approach to Tuning Distributed Operating System Load Balancing Algorithms Dr. J. Michael Meehan Alan Ritter Computer Science Department Computer Science Department Western Washington University Western Washington University Bellingham, Washington, 98225 USA Bellingham, Washington, 98225 USA [email protected] [email protected] Abstract 2.6 Linux kernel openMOSIX patch was in the process of being developed. This work concerns the use of machine learning techniques (genetic algorithms) to optimize load 2.1 Load Balancing in openMosix balancing policies in the openMosix distributed The standard load balancing policy for openMosix operating system. Parameters/alternative algorithms uses a probabilistic, decentralized approach to in the openMosix kernel were dynamically disseminate load balancing information to other altered/selected based on the results of a genetic nodes in the cluster. [4] This allows load information algorithm fitness function. In this fashion optimal to be distributed efficiently while providing excellent parameter settings and algorithms choices were scalability. The major components of the openMosix sought for the loading scenarios used as the test load balancing scheme are the information cases. dissemination and migration kernel daemons. The information dissemination daemon runs on each 1 Introduction node and is responsible for sending and receiving The objective of this work is to discover ways to load messages to/from other nodes. The migration improve the openMosix load balancing algorithm. daemon receives migration requests from other The approach we have taken is to create entries in nodes and, if willing, carries out the migration of the the /proc files which can be used to set parameter process. Thus, the system is sender initiated to values and select alternative algorithms used in the offload excess load.
    [Show full text]
  • HPC with Openmosix
    HPC with openMosix Ninan Sajeeth Philip St. Thomas College Kozhencheri IMSc -Jan 2005 [email protected] Acknowledgements ● This document uses slides and image clippings available on the web and in books on HPC. Credit is due to their original designers! IMSc -Jan 2005 [email protected] Overview ● Mosix to openMosix ● Why openMosix? ● Design Concepts ● Advantages ● Limitations IMSc -Jan 2005 [email protected] The Scenario ● We have MPI and it's pretty cool, then why we need another solution? ● Well, MPI is a specification for cluster communication and is not a solution. ● Two types of bottlenecks exists in HPC - hardware and software (OS) level. IMSc -Jan 2005 [email protected] Hardware limitations for HPC IMSc -Jan 2005 [email protected] The Scenario ● We are approaching the speed and size limits of the electronics ● Major share of possible optimization remains with software part - OS level IMSc -Jan 2005 [email protected] Hardware limitations for HPC IMSc -Jan 2005 [email protected] How Clusters Work? Conventional supe rcomputers achieve their speed using extremely optimized hardware that operates at very high speed. Then, how do the clusters out-perform them? Simple, they cheat. While the supercomputer is optimized in hardware, the cluster is so in software. The cluster breaks down a problem in a special way so that it can distribute all the little pieces to its constituents. That way the overall problem gets solved very efficiently. - A Brief Introduction To Commodity Clustering Ryan Kaulakis IMSc -Jan 2005 [email protected] What is MOSIX? ● MOSIX is a software solution to minimise OS level bottlenecks - originally designed to improve performance of MPI and PVM on cluster systems http://www.mosix.org Not open source Free for personal and academic use IMSc -Jan 2005 [email protected] MOSIX More Technically speaking: ● MOSIX is a Single System Image (SSI) cluster that allows Automated Load Balancing across nodes through preemptive process migrations.
    [Show full text]
  • Distributed-Operating-Systems.Pdf
    Distributed Operating Systems Overview Ye Olde Operating Systems OpenMOSIX OpenSSI Kerrighed Quick Preview Front Back Distributed Operating Systems vs Grid Computing Grid System User Space US US US US US US Operating System OS OS OS OS OS OS Nodes Nodes Amoeba, Plan9, OpenMosix, Xgrid, SGE, Condor, Distcc, OpenSSI, Kerrighed. Boinc, GpuGrid. Distributed Operating Systems vs Grid Computing Problems with the grid. Programs must utilize that library system. Usually requiring seperate programming. OS updates take place N times. Problems with dist OS Security issues – no SSL. Considered more complicated to setup. Important Note Each node, even with distributed operating systems, boots a kernel. This kernel can vary depending on the role of the node and overall architecture of the system. User Space Operating System OS OS OS OS OS OS Nodes Amoeba Andrew S. Tanenbaum Earliest documentation: 1986 What modern language was originally developed for use in Amoeba? Anyone heard of Orca? Sun4c, Sun4m, 386/486, 68030, Sun 3/50, Sun 3/60. Amoeba Plan9 Started development in the 1980's Released in 1992 (universities) and 1995 (general public). All devices are part of the filesystem. X86, MIPS, DEC Alpha, SPARC, PowerPC, ARM. Union Directories, basis of UnionFS. /proc first implemente d here. Plan9 Rio , the Plan9 window manager showing ”faces(1), stats(8), acme(1) ” and many more things. Plan9 Split nodes into 3 distinct groupings. Terminals File servers Computational servers Uses the ”9P” protocol. Low level, byte protocol, not block. Used from filesystems, to printer communication. Author: Ken Thompso n Plan9 / Amoeba Both Plan9 and Amoeba make User Space groupings of nodes, into specific categories.
    [Show full text]
  • Sun's Chief Open Source Officer +
    RJS | PYTHON | SCGI | OPENOFFICE.ORG | Qt | PHP LINUX JOURNAL ™ METAPROGRAMMING PRIMER LANGUAGES VIEW CODE IN YOUR BROWSER SCGI FOR FASTER Since 1994: The Original Magazine of the Linux Community WEB APPLICATIONS JUNE 2007 | ISSUE 158 OPENOFFICE.ORG RJS EXTENSIONS | Python Validate E-Mail LUA OVERVIEW | SCGI Addresses | OpenOffice.org in PHP | Database Comparison Interview with SUN’S CHIEF OPEN | Qt SOURCE OFFICER | PHP The Object Relational Mapping Quagmire JUNE www.linuxjournal.com USA $5.00 | CAN $6.50 2007 ISSUE 158 U|xaHBEIGy03102ozXv+:' + Qt 4.x Asynchronous Data Access Today, Jack confi gured a switch in London, rebooted servers in Sydney, and watched his team score the winning run in Cincinnati. With Avocent data center management solutions, the world can fi nally revolve around you. Avocent puts secure access and control right at your fi ngertips — from multi-platform servers to network routers, remote data centers to fi eld offi ces. You can manage everything from a single screen, from virtually anywhere. This means you can troubleshoot, reboot or upgrade your data center devices — just as if you were sitting in front of them. Avocent simplifi es your workday. What you do with the extra time is up to you. For information on improving data center performance, visit www.avocent.com/control Avocent, the Avocent logo and The Power of Being There are registered trademarks of Avocent Corporation. All other trademarks or company names are trademarks or registered trademarks of their respective companies. Copyright © 2007 Avocent Corporation. Today_BB2_Linux.indd 1 4/3/07 12:36:29 PM JUNE 2007 CONTENTS Issue 158 COVER STORY 46 Interview with Simon Phipps Why did Sun decide to GPL Java? Glyn Moody FEATURES 50 Programming Python, Part I 70 Christof Wittig and Ted Neward on Find out what the love for Python is about.
    [Show full text]
  • Downloads the Boot Server
    CHEP 2003, La Jolla, California, March 24-28 2003 1 OpenMosix approach to build scalable HPC farms with an easy management infrastructure R. Esposito, P. Mastroserio, G. Tortone INFN, Napoli, I-80126, Italy F. M. Taurino INFM, Napoli, I-80126, Italy The OpenMosix approach is a good solution to build powerful and scalable computing farms. Furthermore an easy management infrastructure is implemented using diskless nodes and network boot procedures. In HENP environment, the choice of OpenMosix has been proven to be an optimal solution to give a general performance boost on implemented systems thanks to its load balancing and process migration features. In this poster we give an overview of the activities, carried out by our computing center, concerning the installation, management, monitoring, and usage of HPC Linux clusters running OpenMosix. sharing, load balancing algorithms and, in particular, the 1. INTRODUCTION individual load of the single nodes and the network speed. Each process has a Unique Home-Node (UHN) where it This document is a short report of the activities carried was created. Normally this is the node to which the user out by the computing centre of INFN, INFM and Dept. of has logged-in. The single system image model of Physics at University of Naples “Federico II”, concerning OpenMosix is a CC (cache coherent) cluster, in which the installation, management and usage of HPC Linux every process seems to run at its UHN, and all the clusters running OpenMosix [1]. processes of a user's session share the execution These activities started on small clusters, running a local environment of the UHN.
    [Show full text]
  • Evolving an Efficient and Effective Off-The-Shelf Computing Infrastructure for Schools in Rural Areas of South Africa
    Evolving an efficient and effective off-the-shelf computing infrastructure for schools in rural areas of South Africa A thesis submitted in fulfilment of the requirements for the degree of Doctor of Philosophy of Rhodes University by Ingrid Giselle Sieborger February 2017 Abstract Upliftment of rural areas and poverty alleviation are priorities for development in South Africa. Information and knowledge are key strategic resources for social and economic development and ICTs act as tools to support them, enabling innovative and more cost effective approaches. In order for ICT interventions to be possible, infrastructure has to be deployed. For the deployment to be effective and sustainable, the local community needs to be involved in shaping and supporting it. This study describes the technical work done in the Siyakhula Living Lab (SLL), a long-term ICT4D experiment in the Mbashe Municipality, with a focus on the deployment of ICT infrastructure in schools, for teaching and learning but also for use by the communities surrounding the schools. As a result of this work, computing infrastructure was deployed, in various phases, in 17 schools in the area and a “broadband island” connecting them was created. The dissertation reports on the initial deployment phases, discussing theoretical underpinnings and policies for using technology in education as well various computing and networking technologies and associated policies available and appropriate for use in rural South African schools. This information forms the backdrop of a survey conducted with teachers from six schools in the SLL, together with experimental work towards the provision of an evolved, efficient and effective off-the-shelf computing infrastructure in selected schools, in order to attempt to address the shortcomings of the computing infrastructure deployed initially in the SLL.
    [Show full text]
  • Clusterflop an Experiment in Building a Cluster from Low Cost Parts
    ClusterFLOP An Experiment in Building a Cluster From Low cOst Parts E.E. 505 - Computer Architecture – Professor Swarz E.E. 506 - Introduction to LANs and WANs – Professor Gannon David Feinzeig [email protected] Jeremy Slater [email protected] May 3, 2004 Acknowledgements We would like to extend special thanks to the following parties: • Professor Donald R. Brown for allowing us to use space in the spinlab. • Stephen W. Laverty and Benjamin Woodacre, WPI, class of 2003, for their invaluable sug- gestions and assistance. i Contents 1 Introduction 1 2 System Architecture 1 3 Hardware System Design 3 3.1 NodeSpecifications............................... ...... 3 3.2 PoweringofClusterFLOP . ...... 3 3.3 Diskless Network Booting of Client Nodes . ........... 4 4 Software System Design 5 4.1 EtherbootNetworkBootImage . ....... 5 4.2 OpenMosix Required Client Node Configuration . ........... 5 4.3 OpenMosixUserspaceTools . ....... 6 5 Design for Testability 7 5.1 Monitoring Network Activity . ........ 7 5.1.1 Transparent Network Bridge . ..... 7 5.1.2 Data Transfer Rate Analysis: MFS and NFS . ...... 8 5.1.3 OpenMosix Node Monitoring Feature . ...... 9 5.2 Testing Sample Application: POV-Ray . .......... 9 5.3 Testing Sample Application: LAME MP3 Encoder . .......... 12 6 Conclusions 12 ii List of Figures 1 OpenMosix mosmon NodeMonitoringUtility . 7 2 MaximumTransferRateofNFS .......................... ... 8 3 MaximumTransferRateofMFS .......................... ... 8 4 OpenMosixHeartbeatTraffic . .. .. .. .. .. .. .. .... 9 5 Normalized Execution Time of POV-Ray vs. Node Count . ......... 10 6 NetworkTrafficforaFullPOV-RayRender . ...... 11 7 NetworkTrafficDuringMP3Encoding. ..... 12 iii 1 Introduction The classical approach to improving computing performance has been to “make it faster”. Com- peting manufacturers have played a game of oneupsmanship, reducing process sizes and increasing processor operating frequencies.
    [Show full text]
  • A Bibliography of Books and Articles About UNIX and UNIX Programming
    A Bibliography of Books and Articles about UNIX and UNIX Programming Nelson H. F. Beebe University of Utah Department of Mathematics, 110 LCB 155 S 1400 E RM 233 Salt Lake City, UT 84112-0090 USA Tel: +1 801 581 5254 FAX: +1 801 581 4148 E-mail: [email protected], [email protected], [email protected] (Internet) WWW URL: http://www.math.utah.edu/~beebe/ 02 July 2021 Version 4.44 Abstract General UNIX texts [AL92a, AL95a, AL95b, AA86, AS93b, Ari92, Bou90a, Chr83a, Chr88, CR94, Cof90, Coh94, Dun91a, Gar91, Gt92a, Gt92b, This bibliography records books and historical Hah93, Hah94a, HA90, Hol92, KL94, LY93, publications about the UNIX operating sys- LR89a, LL83a, MM83a, Mik89, MBL89, tem, and UNIX programming tools. It mostly NS92, NH91, POLo93, PM87, RRF90, excludes networks and network programming, RRF93, RRH94, Rus91, Sob89, Sob91, which are treated in a separate bibliography, Sob95, Sou92, TY82b, Tim93, Top90a, internet.bib. This bibliography was started Top90b, Val92b, SSC93, WMP92] from material in postings to the sunflash list, volume 46, number 17, October 1992, and volume 57, number 29, September 1993, by Samuel Ko (e-mail: [email protected]), and then significantly extended by the present Catalogs and book lists author. Entry commentaries are largely due to S. Ko. [O'R93, Spu92, Wri93] 1 2 Communications software History [Cam87, dC87, dG93, Gia90] [?, ?, Cat91, RT74, RT79a] Compilers Linux [DS88, JL78, Joh79, JL87a, LS79, LMB92, [BBD+96, BF97, HP+95, Kir95a, Kir95b, MB90, SF85] PR96b, Sob97, SU94b, SU95, SUM95, TGB95, TG96, VRJ95,
    [Show full text]