Fall 2006 Presentations


  • September 8, 2006 (Announcement Poster)

    Gavilan Steinman: A Divide and Conquer Approach to Developing Web Applications

    This talk will consider several techniques that can be used during the development of today's Web sites. We present a database-driven technique that draws a dividing line between the content, style, and logic of a Web site. The talk will explain why it is effective and efficient to implement Web sites in a database-driven fashion. We will conclude with preliminary research results concerning the efficiency of a real-world Web application and discuss future research opportunities in Web-related areas. [Back to Top]


  • September 22, 2006 (Announcement Poster)

    Gregory M. Kapfhammer: Measuring the Performance of an XML-Based Communication Primitive

    Computer systems frequently use the eXtensible Markup Language (XML) to store and communicate data. Popular Web sites, applications, and distributed systems (e.g., Google, OpenOffice, and PlanetLab), require the use of XML-based storage and communication primitives. The Java programming language also offers a wide variety of remote communication primitives that vary according to their performance and functionality. We present a suite of micro benchmarks that measure the performance of low-level socket-based primitives and high-level communication with XML. This talk concludes with an examination of future research that can be conducted by undergraduates at Allegheny College. [Back to Top]


  • October 6, 2006 (Announcement Poster)

    Andrew Thall: Programming the Multi-Core CPU

    As increases in CPU clock-speeds have slowed, hardware designers look for other ways to handle demands for more computational power. This talk will explore multi-core CPU programming, writing multi-processing and multi-threaded applications for those CPUs with multiple computational units on a single chip. We will discuss possible speed-ups for different types of computation and will see some totally sweet examples of optimized code running on dual-core processors. [Back to Top]


  • October 20, 2006 (Announcement Poster)

    Yuting Zhang: Friendly Virtual Machines: Leveraging a Feedback-Control Model for Application Adaptation

    With the increasing use of Virtual Machines (VMs) as vehicles to isolate applications running on the same host, more challenges are faced by the resource managers for systems that are shared by multiple VMs. In this talk, I will give a brief overview of a system-level virtual machine. I will also introduce our Friendly VM (FVM) framework that enables multiple VMs to share underlying resources both fairly and efficiently by leveraging feedback about resource usage and availability. Such properties are ensured using one of many provably convergent control rules, such as Additive-Increase/Multiplicative-Decrease (AIMD). Finally, I will present a prototype FVM implementation and some experimental results. We will examine potential research topics at the end of the talk. [Back to Top]


  • November 3, 2006 (Announcement Poster)

    Andrew Thall: Ubiquitous Parallelism: GPGPU and Multi-Core Programming

    As processor speeds top out in the 3 Ghz range, scientists have turned once again to parallel computation for handling the ever-increasing need for more computational horsepower and more data-throughput. Unlike the parallel hardware of the past, modern researchers turn either to (a) networked computation on commercial or dedicated PCs, or (b) parallel computation on high-end commercial processors such as multi-core CPUs and graphics processing units (GPUs). This talk will discuss the latter, demonstrating a project for GPU-based scientific computing and discussing the potential of current and future machines and the available tools and techniques for using them effectively. [Back to Top]



  • December 1, 2006 (Announcement Poster)

    Robert S. Roos: Unusual Applications of Genetic Algorithms

    Genetic algorithms represent an approach to problem-solving that mimics nature's evolutionary approach to optimization: a "population" of candidate solutions to a problem evolves through processes of selection, mutation, and recombination, giving rise to successively more "fit" individuals. The genetic algorithm approach has been successfully applied to a number of problems, some of them quite unexpected. We will examine a few of these, such as the ACOVEA project, the Golem project, and others, and briefly survey some of the open problems in the field of genetic algorithms and evolutionary programming in general. [Back to Top]


Link to this Page