Showing posts with label DCS talk. Show all posts
Showing posts with label DCS talk. Show all posts

Wednesday, January 23, 2008

Carla Ellis talk – Tuesday, January 22, 2008

Today, I attended the first Distinguished Lecture talk of 2008 in the Department of Computer Science at the University of Toronto. The talk was by Carla Ellis of the Computer Science department at Duke University. Her talk was on energy aware computing. Can computing contribute to energy conservation in non-computer environments? This was the major motivation towards her research. She reviewed how there is computational support for the science of global change for reducing energy demand. We have progressed far with energy management for computing from various levels. First, we have dealt with energy management at the hardware level with low-power circuit design. Second, the operating system has support for energy management such as detecting voltage changes and scaling. Third, there are policies that govern energy management in computing, with popular techniques being caching and prefetching. The operating system can spin the disk down when not in use, and we have energy management schemes for our laptops, like to conserve battery by decreasing the brightness of the display. Fourth, we have software for energy management, with much systems research dealing with this. Carla and her research group have built an energy-centric OS which is nicely called ECOSystem.

When coming up with an energy goal, it is important to know to be aware of the tradeoffs that can occur, like for example, the battery lifetime can be increased however the CPU may be downclocked to run at a lower speed, or there might be a sacrifice in performance. We need to know whether the tradeoffs are justified. In their project called ECOSystem, there is explicit managing of energy use to reach the target battery lifetime. The premise is to fully utilize the battery life within a set timeframe. The scenario that she used was that of a person being able to use the laptop all the way on a coast-to-coast flight across the country, like for example from Halifax to Vancouver. They use a unifying energy concept in ECOSystem which is called currentcy which is equal to current + currency to provide a cost model for energy. Their model is a pay as you go model, ie, you can use currentcy during an epoch. If there is no more currentcy, then there is no more service. Therefore, currentcy needs to be allocated amongst the resources, but care needs to be taken such that no resource hoards all the energy. Therefore, the energy needs to be distributed evenly for the task at hand. As part of the ECOSystem, there is currentcy-aware scheduling to determine which resources get allocated what amount of currentcy and up to how much (cap), as well as buffer management strategies and prefetching (common of all energy-aware computing research).

The second research area Carla described was that of context-aware energy computing in environments, in which at Duke University, there is a smart home with the newest technologies and “green” initiatives. Their problem was to count the number of people that walk through the doorway so that for example, lights could be switched off, if the last person leaves the room, or the thermostat can be adjusted so that it is not too hot in the room (which she mentioned could have been used in the lecture room she was talking in). In fact, she is taking her own research personally by building her own smart house, transferring research and technology into her own house.

The third research project that Carla next talked about was the soil-moisture forestry project in which she is working with biologists to measure soil moisture to determine when to sample and how to sample. Her research group is looking into soil moisture data and developing models to suppress transmission.

She concluded her talk by issuing a challenge to all computer scientists. Any subdiscipline of computer science can find research topics related to energy efficiency (like for example, using energy as a new metric for research), but not necessary having to go heavily into the area. There is need for interdisciplinary research and it is a challenge to do interdisciplinary research. There is a trend to support energy conservation in buildings and transportation systems, which shows the practical applications. She mentioned how collaborative applications can be written for more effective teleconferencing/telecommuting that exploit the energy conservation. She also mentioned that energy-aware applications can take technologies and research from software engineering, machine learning, and systems.

On Technorati: ,

Friday, May 11, 2007

Gregory D. Abowd talk at DCS today

Today is a talk from Gregory D. Abowd from the School of Interactive Computing and GVU Center, Georgia Tech called "Using Computing Technologies to Face the Challenges of Autism". This is an application of ubiquitous computing to a real-life health problems. I think this is what ubiquitous computing really should be, how computing can be applied to problems in real life. Gregory will be at the Pervasive conference doing a tutorial, which I'm in the doctoral colloquium and a student volunteer in.

Here is the abstract for the talk:
In the Fall of 1999, my wife and I learned that our son, Aidan, age 2, had
been diagnosed with autism. In the summer of 2003, our second son, Blaise,
was also diagnosed with autism, at the age of 3. A recent CDC study
estimates the incidence of autism in several regions of the U.S. at 1 in
1150, so my wife and I are not alone in having to come to grips with the
everyday struggles of this perplexing neurological developmental
disability. Since I prescribe to the research philosophy of "scratching your own itch," it is no surprise that I have looked for ways to have my research in
ubiquitous computing address the challenges of those impacted by autism. My
goal is not to use technology to "cure" autism, but to have it play a vital
role in increasing our understanding of that unique human condition and to
have it ease the everyday struggles for those who deal with it. In this
talk, I will give an overview of my group's research trajectory, reflecting
the efforts of a growing community of researchers who are using this
real-world health challenge to drive a human-centered research agenda. I
will summarize four years of research and give a glimpse of what I think
are the important challenges for the next four years, and why I think
technologists are an important part of the solution.

Gregory is talking about Family Video Archive which he created for annotating metadata on video which he converted from his father's tapes. His research is now delving into medical disorders like autism to apply his research based on his sons who have autism. Autism is a developmental disability impacting language, socialization and behaviour. I knew a student who I was a tutor when I was working in Kumon who had autism and how her mother was so persistent in trying to get all the help she could get for her son. The research projects that he is doing to help with autism deals with automated capture of a live experience.

The three projects that deal with automated capture are Abaris, which deals with data capture of developmental therapy. Lots of data get generated from these therapy sessions. The idea is to instrument the therapy sessions with automated data capture tools, by detecting when the trial begins using phonetic-based speech, and recording handwriting using Anoto to locate grading at end of trial. An application was created to detect differences between different sessions from different therapists, which therapists may not have remembered. This helps caregivers use real data to assess progress.

The second project is called CareLog which captures rich behavioural data in the
unstructured environment. This behavioural data could be the good and bad behaviours, so therapists can detect behavioural changes in children. This is called retroactive capturing and is using selective archiving. This technology can be used at home or in a school setting, and is part of Gillian Hayes' PhD thesis who gave a talk at U of T about 1-2 months ago.

The third project deals with early detection of autism and can be applied to other medical disorders. How does HCI come into this problem? Gregory says we need to have better screening and diagnosis practices in parent reporting and child observation. One research area deals with automated video analysis to find automatic scene extraction and automatic scene annotation to compare to see what is different between two sessions. Gregory just mentioned that not just Google is a good research tool, so is YouTube which he showed a video of a child and then showed short extractions of clips that demonstrate certain behaviours.

So how does capturing play into the science of autism? According to Gregory, capturing is a form of imaging and that capturing is considered behavior imaging and can transform the science of autism, just like imaging has impacted medical science.

Thursday, April 19, 2007

Escalating from small screens to large screens: Patrick Baudisch talk

Today is the talk in DCS from Patrick Baudisch from Microsoft Research. His talk is about escalating from small screens to large screens. The abstract of his talk is here.

Abstract

The range of available range of computing devices continues to grow.
One way of classifying these devices is by their display size,
ranging from smart personal objects, such as phones and watches to
wall-size displays. The new devices have the potential to radically
reshape the way we think and work. At this point, however, it is
still an open question how these devices will come together to create
that ubiquitous infrastructure.

In my vision, devices of different screen sizes will be joined into a
single "escalation" hierarchy: Whenever possible, users will use the
most available, least encumbering device. Only when the most
available device fails will users escalate to the next larger and
more powerful device. I envision a future in which many users will
conduct the vast majority of their information access on a device the
size of a mobile phone. On the other hand, users will escalate to
very large and powerful devices, such as multi-display systems or
wall displays, if complex sensemaking activities require them to.

In this talk, I present a framework of visualization and interaction
techniques that combines devices into a single integrated device
hierarchy. Its ultimate goal is to enable users to begin a thought
process on one device and to continue it on another one using a
single unified type of interaction.

Here are my notes that I made from the talk:

He is mentioning how the number of cell phones sold is more than the number of PCs. The mantra is to use the most available device, which is what ubiquitous computing is all about. However, the challenge is porting from a small screen to a large screen. Sometimes you want to see information displayed on a wall display instead on a tiny screen of a cell phone. In fact, many people like software developers have more than one monitor, and there was an article showing the performance benefits of having a larger screen. You want to have a consistent experience moving from a small screen to a large screen.

This type of research in my opinion is called ambient computing. According to Patrick, what we want is to have high focus in the core and low resolution in the periphery vision. Only content physically close to the user can be perceived in full vision, therefore the human is the limiting factor. Patrick showed a demo called drag and pop, which allows users to drag files to folders on the desktop but it will highlight those possible folders, without having the user to physically use the mouse to drag to the actual folder. Therefore, this concept is using focus + context interaction which is to bring the content to the user, let the user interact with it, and send the content back. This especially applies to large displays, because you don't want to have users to be fatigued with their body parts like moving their arms or walking across the display.

This then begs the question, is this going to make users more lazy? Witness the success of the Nintendo Wii because it allows users to move and do some exercise interacting with the games. For small displays, we also want focus + context, but the context is imaginary. For example, he showed a demo of a mapping application on a Compaq iPaq handheld, where arcs are used (called halo rings) to indicate that there are locations of interest for the user.

In summary, human factors cause large screens to fall apart into focus and context, and interaction. By the way, Patrick's talk in PPT form is right here.

On Technorati: , ,

Thursday, April 12, 2007

DCS talk: Adrien Treuille from U of Washington

Today there is a talk from Adriene Treuille from University of Washington called "New approaches to modeling and control of complex dynamics". Abstract of his talk is below.

Complex phenomena such as animal morphology, human motion, and large
fluid systems challenge even our most sophisticated simulation and
control techniques. My overarching research goal has been to develop
fundamentally new methods to approach such high-dimensional and
nonlinear problems. This talk presents my work solving these problems
across a wide range of phenomena, including a new model-reduction
approach to fluids that is orders-of-magnitude faster than standard
simulation methods and enables interactive high-resolution fluid
simulation for the first time. Another example is a continuum
approach to crowd dynamics which efficiently reproduces empirical
aspects of large crowd behavior that would be difficult or impossible
to achieve with traditional agent models. The talk will also cover
work on several other phenomena including human animation, animal
morphology, and protein folding. Such new algorithmic approaches
advance not only our ability to simulate and control complex systems
but also our understanding of the systems themselves.

Bio: Adrien Treuille is a Ph.D. candidate in the Department of
Computer Science and Engineering at the University of Washington. He
received a M.S. degree in Computer Science from the University of
Washington, and a B.S. degree in Computer Science from Georgetown
University. Adrien's research interests include computer graphics,
optimization, model reduction, control, biomechanics, and recently,
biochemistry.

What seems fascinating about his talk is the modeling of crowds like for example how crowds form in metropolitan cities, and how this can be mathematically simulated which closely resembles what naturally happens. Also, what was really cool was how he modelled and showed a simulation of human motion. Even though graphics is not really my research area, it's just neat to see how graphics works.

Thursday, March 29, 2007

DCS seminar: Gillian Hayes from Georgia Tech

Today, there is a talk from Gillian Hayes at Georgia Tech. She is talking about Support and Surveillance: Audio and Video Recording in Daily Life. I've noticed that her supervisor is Gregory Abowd who is doing work in context-aware computing. Abstract of her talk is here.

Capturing information is too much work and hard, a lot of times I know that I want to record stuff in my life using my camera and video, and it definitely is not trivial and can be cumbersome. Her work deals with how to do selective archiving of audio and video. This relates to a project that Microsoft Research is doing which is MyLifeBits from Gordon Bell.

One study that she is looking at has to deal with how to use technology to help autism patients. Right now, paper forms have to be done for record keeping of the autistic child's behaviour. Therefore, the recording and capture has to be made really simple. This was tested out in a school deployment and every teacher completed successful assessment with minimum amount of training. In this system, teachers were able to still get access to the data if they were to miss the incident. One concern is that it took longer to review the data, because the teachers had to spend the time to view the video. Teachers felt in control because they were part of the analytic process.

Another study looked into the acceptability of selective archiving in an informal space, which formed the BufferWare project.

The objectives of the case studies dealt with the tension points for users when doing selective archiving and capturing of audio and video. For example, who owns the data? Another question has to deal with when to record, and if recording, is this a potential risk? Does it become a technology for self-monitoring? Therefore, there can be an element of intrusiveness of the technology. As a result, acceptability of the technology requires understanding and trust.

Selective archiving is an appropriate and adoptable approach for functional behaviour assessment. One of the things she is looking into is the effects of selective archiving and capturing on collaborative publishing and editing. You see this with YouTube where people record and post videos, but they don't really collaborate on them. But all these case studies had technology built into the space, what about the technology in a mobile setting? Gillian and others created the Personal Audio Loop, where you would be able to record audio at a particular point in time and find it.

One of the things that I'm curious to know is this. These are specific case studies where the technology is deployed in the environment for capturing and recording. What about for the average individual, for example, going on a trip? Are there concepts, design elements from these studies that could be applied for selective archiving for the average person? And how could something like this be incorporated into a blog?

Thursday, March 22, 2007

Tapan Parikh talk at CS at U of T

Tapan is giving a talk about Designing Appropriate Computing Technologies for the Rural Developing World, he is from the University of Washington.

Here is his abstract and bio:

Globalization has seen an increase in disparity between developed and
undeveloped regions. Disproportionate access to information
technology is a symptom and a factor contributing to this disparity.
In particular, people living in the rural developing world have many
information needs that could, but are not, being met by IT.
Technology for this context must be low-cost, accessible and
appropriate given the local infrastructure, including conditions of
intermittent power and connectivity. In this talk, I describe my
experiences developing CAM - a toolkit for mobile phone data
collection for the rural developing world. Designing technologies for
an unfamiliar context requires understanding the needs and
capabilities of potential users. Drawing from the results of an
extended design study conducted with microfinance group members in
rural India (many of whom are semi-literate or illiterate), I outline
a set of user interface design guidelines for accessibility to such
users. The results of this study are used to inform the design of
CAM, a mobile phone application toolkit including support for
paper-based interaction; multimedia input and output; and
disconnected operation. I provide evidence of CAM's usability,
breadth, and real-world applicability. Regarding real-world
applicability, a CAM application for microfinance data collection is
now being used by 17 NGO (non-governmental organization) to serve
over 10000 group members in two states of India. Regarding breadth, I
list some important rural data collection applications - including
for retail supply chain tracking, agricultural monitoring and health
care - that we have implemented, or can be implemented, using the CAM
toolkit. I conclude by discussing possible topics for future work and
my long-term research vision.

Bio: Tapan S. Parikh is an Intel Fellow and Ph.D. Candidate in the
Department of Computer Science and Engineering at the University of
Washington. Earlier, he received a M.S. degree in Computer Science
from UW and a Sc.B. degree with Honors in Molecular Modeling from
Brown University. Tapan's research interests include human-computer
interaction (HCI), systems engineering and information and
communication technologies for development (ICTD).

This talk is interesting to me because it has great relevance to applying technology to the rural developing world, that the urban communities take for granted. How can we solve the problems in rural areas using a mobile phone solution that deals with understanding context. The first part is understanding the context through a study that he is talking about how to provide financial services to the poor using computer technology. This study was done in India. Information can be the bridge between the formal and the informal. There is a need to design a system to make it accessible to users, and geographic. How to design a user interface for rural users who are semi-literate or illiterate? There was a test with a group of users, where the group hired a person to record the data on paper and pen. Then the paper representation was then reproduced as a software prototype on a laptop. For user response, there was a wide gap for looking at the computer and how to use the mouse to move around the screen. So in his design, he used icon buttons. Users then started to gain confidence after playing around with the user interface and clicking on buttons which would output in local language audio. I found that pretty interesting that illiterate users were able to work with the system, I can't even get my parents to try to use a computer!

The second part is to actually build the system. The solution that he used was the mobile phone which has a numeric keypad, speakers and microphone, is battery-operated and low cost. The HCI research community uses paper user interfaces for prototyping and leverage affordances of paper in digital user interfaces. But these approaches have had limited impact, and rural developing world may be the killer application for paper user interfaces. He created CAM, an application toolkit for mobile phones which includes a CAM browser and CAM scripting language to interact with the forms. The phone is used to capture the audio and images from paper, and then can review it on the phone for the user. The paper form has specific images that are captured and is associated with a particular action. Here's the paper of this that he presented at UIST 2005. This paper form that has special images which is captured by the phone, reminds me of the work by Intel Research Cambridge UK that dealt with capturing concentric circles on paper (like bar codes) and those correspond to performing a particular action. This is pretty neat, then there is no need to have to deploy something like RFID tags, because this is a low cost solution, and all phones now include a camera.

So how does this work in the field? He is now explaining about how he evaluated CAM. His results showed that the users performed significantly better with audio than textual prompts. The system has been deployed in India and commercialized by Ekgaon Technologies. CAM can also be applied to other field areas like agricultural monitoring.

His future work is looking into building a toolkit on top of CAM that allows local people to build their own solutions, and provide them with the tools and application development resources. The rural development using computer technology is now a hot area in many research institutions like UC Berkeley, Princeton/UW/MSR, MSR India, MIT Media Lab (with Nicholas Negroponte's One Laptop per Child).

This is very interesting work, and he mentioned this motivates students and others to work on this to contribute to solving real world problems.

On Technorati: , , , ,

Tuesday, March 20, 2007

CS lecture talk on web servers to databases to storage systems

From web servers to databases to storage systems: A methodological
approach to system design
Dr. Bianca Schroeder
Dept. of Computer Science, Carnegie Mellon

Modern computer systems are complex, and designing systems with good
performance and high reliability is a major challenge. In this talk,
I will show how a measurement-driven "methodological" approach to
system design can create better systems. The approach combines
real-world measurements with techniques from statistical workload and
failure analysis, user behavior characterization, analytical
modeling, performance evaluation, and scheduling and queueing theory
to gain insights into system behavior that lead to better design
ideas. Specific applications we consider in this talk include: (*)
How to schedule connections in a web server to combat transient
overload; (*) How to provide QoS for database transactions; (*) How
to exploit client behavior patterns to maximize system performance;
(*) How to improve reliability of large-scale clusters and storage systems.

Bianca Schroeder is currently a postdoctoral researcher in the
Computer Science Department at Carnegie Mellon University working
with Garth Gibson. She received her doctorate from the Computer
Science Department at Carnegie Mellon University under the direction
of Mor Harchol-Balter in 2005. She is a two-time winner of the IBM
PhD fellowship and her work has won two best paper awards. Her recent
work on system reliability has been featured in articles at a number
of news sites, including Computerworld, Slashdot, StorageMojo and
eWEEK. Bianca's research focuses on the design and implementation of
computer systems. The methods she is using in her work are inspired
by a broad array of disciplines, including performance modeling and
analysis, workload and fault characterization, machine learning, and
scheduling and queueing theory. Her work spans a number of different
areas in computer systems, including high-performance computing
systems, web servers, computer networks, database systems and storage
systems.

Right now, she is talking about system design for web sites where the design goals are low response times. A commercial web site consists of a web server, database system and storage system. Let's look at the web server. Queueing theory can be used to schedule web requests. How to improve the performance of static requests? The standard method is timesharing (FAIR), where the tasks are allocated a certain amount of time and share that time, so all tasks have equal opportunity. Her way of approaching this is to use an optimal policy called Shortest-Remaining-Processing-Time (SRPT) to minimize mean response time and minimize the number of jobs in the system. The challenge is how to implement this in a real web server? The mean response times for loading in Apache/Linux was a 10X improvement over the FAIR strategy. Web workloads are heavy-tailed. Large requests under the FAIR strategy will get done and there is more workload compared to those requests using the SRPT where almost no workload is done.

For databases, the question is which resource to schedule? The bulk of the performance is based on wait time in the database which means acquiring locks. Most databases implement a 2-phase lock mechanism for concurrency control and consistency. So, the question then translates to how to schedule locks? Can we have preemptive policies and non-preemptive policies? So the key idea is to preempt only lock holders with long remaining time, but this requires having to do bookkeeping and trying to predict the future of the tasks. Her results show that they improve existing research in this area.

For the storage system, it must be reliable. What makes this reliability hard is that failures are not exposed since there is no failure data made available. Manufacturers and vendors don't want to expose this data. She collected this data from 30 systems. The real data does not match the theoretical assumption that failures can be modelled as an exponential distribution (remembering my Software Reliability course I took at Waterloo!). For summary, many common assumptions about disk failures are not realistic. Failure rates are higher than vendor specs, time between failure are not exponential, failures are not independent.

In conclusion, can request scheduling to improve response time for all requests, transaction scheduling can improve response time of "big spenders" without hurting others, and many common assumptions on failures are not realistic. It would be interesting to see why it is that existing failure models do not model what actually exists in reality. I also remember reading an article part of a grad research database course about the modelling of disk drives, and one of the things I criticized is that how accurate this is. Modelling is always a tricky thing in my opinion, especially when you're trying to model something like failures, where they can be random and spontaneous, and are affected by many factors.

On Technorati: , , ,

Tuesday, February 27, 2007

Ed Nightingale talk

Ed Nightingale from University of Michigan is at U of T to give a talk on "Improving the performance of highly reliable software systems". Abstract of his talk is below.

Commodity operating systems still retain the design principles developed when processor cycles were scarce and RAM was precious. These out-dated principles have led to performance/functionality trade-offs that are no longer needed or required; I have found that, far from impeding performance, features such as safety, consistency and energy-efficiency can often be added while improving performance over existing systems. I will describe my work developing Speculator, which provides facilities within the operating system kernel to track and propagate causal dependencies. Using Speculator, I will show that distributed and local file systems can provide strong consistency and safety guarantees without the poor performance these guarantees usually entail.

Ed Nightingale is Jason Flynn's PhD student, I remember reading a bunch of his papers during the pervasive computing research for the systems area.

He is talking about how to improve the performance of software systems and how reliability and correctness can still be ensured while improving the performance which is 8X slower than synchronous I/O. This is called external synchrony. It has to do with tracking causal dependencies in processes. He is also talking about when data is durable that you know it has been written properly to disk, as well as speculative execution. Speculative execution can dramatically improve the speed while maintaining consistency guarantees.

One of the research areas that I know Ed's work is in energy-aware adaptation for mobile computing systems. Since battery life is crucial in mobile computing devices, therefore one active area of research deals with how to maximize battery life on a computer. You already have several power saving modes on the computer, but Ed looks into whether there are other aggressive ways to even save more battery life on the computer, which when I read was very innovative. One of his papers is "Ghosts in the Machine", a similar resemblance to the Japanese animation movie "Ghosts in the Shell".

On Technorati: speculative execution, DCS talk