Abstract
We present Xipx, the first port of a major educational operating system to a processor in the emerging class of many-core architectures. Through extensions to the proven Embedded Xinu operating system, Xipx gives students hands-on experience with system programming in a distributed message-passing environment. We expose the software primitives needed to maintain coherency between many cores in a system lacking specialized caching hardware. Our proposed series of laboratory assignments adds parallel thread execution and intercore message passing communication to a well-established OS curriculum.
- Adams, J. C., Hoobeboom, K., and Walz, J. 2011. A cluster for CS education in the manycore era. In Proceedings of the 42nd ACM Technical Symposium on Computer Science Education (SIGCSE'11). ACM, New York, 27--32. Google Scholar
Digital Library
- Anderson, N., Mache, J., and Watson, W. 2010. Learning CUDA: Lab exercises and experiences. In Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion (SPLASH'10). ACM, New York, 183--188. Google Scholar
Digital Library
- Bell, S., Edwards, B., Amann, J., Conlin, R., Joyce, K., Leung, V., MacKay, J., Reif, M., Bao, L., et al. 2008. Tile64 processor: A 64-core SoC with mesh interconnect. In Proceedings of the International Solid-State Circuits Conference.Google Scholar
Cross Ref
- Brown, R. and Shoop, E. 2011. Modules in community: Injecting more parallelism into computer science curricula. In Proceedings of the 42nd ACM Technical Symposium on Computer Science Education (SIGCSE'11). ACM, New York, 447--452. Google Scholar
Digital Library
- Brylow, D. 2008. An experimental laboratory environment for teaching embedded operating systems. In Proceedings of the 39th SIGCSE Technical Symposium on Computer Science Education (SIGCSE'08). ACM, New York, 192--196. Google Scholar
Digital Library
- Brylow, D. and Ramamurthy, B. 2009. Nexos: A next generation embedded systems laboratory. SIGBED Rev. 6, 1. Google Scholar
Digital Library
- Comer, D. E. 2011. Operating System Design: The XINU Approach Linksys Version. CRC Press. Google Scholar
Digital Library
- Ernst, D., Wittman, B., Harvey, B., Murphy, T., and Wrinn, M. 2009. Preparing students for ubiquitous parallelism. In Proceedings of the 40th ACM Technical Symposium on Computer Science Education (SIGCSE'09). ACM, New York, 136--137. Google Scholar
Digital Library
- Gross, T. R. 2011. Breadth in depth: A 1st year introduction to parallel programming. In Proceedings of the 42nd ACM Technical Symposium on Computer Science Education (SIGCSE'11). ACM, New York, 435--440. Google Scholar
Digital Library
- Hill, L. S. 1929. Cryptography in an algebraic alphabet. Amer. Math. Mon. 36, 6, 306--312.Google Scholar
Cross Ref
- Howard, J., Dighe, S., Hoskote, Y., Vangal, S., Finan, D., Ruhl, G., Jenkins, D., Wilson, H., Borkar, N., et al. 2010. A 48-core IA-32 message-passing processor with DVFS in 45nm CMOS. In Proceedings of the International Solid-State Circuits Conference.Google Scholar
Cross Ref
- Kurian, G., Miller, J., Psota, J., Eastep, J., Liu, J., Michel, J., Kimerling, L., and Agarwal, A. 2010. ATAC: A 1000-core cache-coherent processor with on-chip optical network. In Proceedings of Parallel Architectures and Compilation Techniques. Google Scholar
Digital Library
- Lee, H.-J., Robertson, J. P., and Fortes, J. A. B. 1997. Generalized Cannon's algorithm for parallel matrix multiplication. In Proceedings of the 11th International Conference on Supercomputing (ICS'97). ACM, New York, 44--51. Google Scholar
Digital Library
- Lin, S. and Tatar, D. 2011. Encouraging parallel thinking through explicit coordination modeling. In Proceedings of the 42nd ACM Technical Symposium on Computer Science Education (SIGCSE'11). ACM, New York, 441--446. Google Scholar
Digital Library
- Mallen, A. and Brylow, D. 2010. Compiler construction with a dash of concurrency and an embedded twist. In Proceedings of the 25th ACM SIGPLAN Symposium on Systems, Programming, Languages, and Applications: Software for Humanity. 161--168. Google Scholar
Digital Library
- Ortiz, A. 2011. Teaching concurrency-oriented programming with Erlang. In Proceedings of the 42nd ACM Technical Symposium on Computer Science Education (SIGCSE'11). ACM, New York, 195--200. Google Scholar
Digital Library
- Rotta, R. 2011. On efficient message passing on the Intel SCC. In Proceedings of the 3rd Many-core Applications Research Community (MARC) Symposium.Google Scholar
- Sadowski, C., Ball, T., Bishop, J., Burckhardt, S., Gopalakrishnan, G., Mayo, J., Musuvathi, M., Qadeer, S., and Toub, S. 2011. Practical parallel and concurrent programming. In Proceedings of the 42nd ACM Technical Symposium on Computer Science Education (SIGCSE'11). ACM, New York, 189--194. Google Scholar
Digital Library
- Strazdins, P. E. 2012. Experiences in teaching a specialty multicore computing course. In Proceedings of the IEEE International Parallel & Distributed Processing Symposium Workshops. 1271--1276. Google Scholar
Digital Library
- Ziwisky, M. W. and Brylow, D. W. 2012. BareMichael: A minimalistic bare-metal framework for the Intel SCC. In Proceedings of the 6th Many-core Applications Research Community (MARC) Symposium.Google Scholar
Index Terms
A down-to-earth educational operating system for up-in-the-cloud many-core architectures
Recommendations
Memory-Intensive Applications on a Many-Core Processor
HPCC '11: Proceedings of the 2011 IEEE International Conference on High Performance Computing and CommunicationsFuture micro-processors are expected to contain an increasing number of cores. Different models exist for efficiently organizing the cores of the resulting many-core processors. The Single-Chip Cloud Computer (SCC) is an experimental processor created ...
From GPGPU to Many-Core: Nvidia Fermi and Intel Many Integrated Core Architecture
Comparing the architectures and performance levels of an Nvidia Fermi accelerator with an Intel MIC Architecture coprocessor demonstrates the benefit of the coprocessor for bringing highly parallel applications into, or even beyond, GPGPU performance ...
Using many-core coprocessor to boost up Erlang VM
Erlang '13: Proceedings of the twelfth ACM SIGPLAN workshop on ErlangThe trend in processor design is to build more cores on a single chip. Commercial many-core processor is emerging these years. Intel Xeon Phi coprocessor , which is equipped with at least 60 relatively slow cores, is the first commercial many-core ...






Comments