Fast And Robust Interface Generation for Ubiquitous Applications

Size: px
Start display at page:

Download "Fast And Robust Interface Generation for Ubiquitous Applications"

Transcription

1 Fast And Robust Interface Generation for Ubiquitous Applications The SUPPLE Project University of Washington, Seattle Krzysztof Gajos, David Christianson, Raphael Hoffmann, Tal Shaked, Kiera Henning, Jing Jing Long, and Daniel S. Weld

2 Automatic, On The Fly Fast And Robust Interface Generation for Ubiquitous Applications The SUPPLE Project University of Washington, Seattle Krzysztof Gajos, David Christianson, Raphael Hoffmann, Tal Shaked, Kiera Henning, Jing Jing Long, and Daniel S. Weld

3 Motivation

4 Motivation Variety of display devices & interaction contexts makes hand-designed interfaces expensive Adapt to device characteristics Current interfaces: complex & One size fits all Adapt to users and tasks Automatic interface generation is a scalable solution

5 Approach Develop abstract representation for: Interfaces Display devices Users Automatically generate interfaces from the abstractions

6 SUPPLE Architecture Interface Model SUPPLE User Model Application or Appliance Device Model User's Info Space Display Target Device

7 SUPPLE Architecture Interface Model SUPPLE User Model Application or Appliance Device Model User's Info Space Display Target Device

8 Road Map Motivation Modeling user interfaces in SUPPLE User interface generation as optimization Automatically adapting user interfaces A preliminary user study Adaptation in SUPPLE Customization support in SUPPLE Conclusions

9 Modeling User Interfaces simple types: int f loat str ing bool media types: image interactivemap containers: {τ i i 1...n } derivative types: τ, C τ vectors: vector(τ) actions: τ 1 τ 2

10 Modeling User Interfaces Classroom: τ: {,, } Light Bank: τ: {,, } A/V: τ: {, } Light: τ: {, } Light... Light... Projector: τ: {, } Light Level: τ: <int, [0,10]> Power: τ: bool Screen: τ: bool Power: τ : bool Input: τ: <string, {data1,data2, video}> Vent: τ: <int, [0,3]>

11 Modeling User Interfaces Classroom: τ: {,, } Light Bank: τ: {,, } A/V: τ: {, } Light: τ: {, } Light... Light... Projector: τ: {, } Light Level: τ: <int, [0,10]> Power: τ: bool Screen: τ: bool Power: τ : bool Input: τ: <string, {data1,data2, video}> Vent: τ: <int, [0,3]>

12 Modeling User Interfaces Classroom:!: {,, } Light Bank:!: {,, } A/V:!: {, } Light:!: {, } Light... Light... Projector:!: {, } Light Level:!: <int, [0,10]> Power:!: bool Screen:!: bool Power:! : bool Input:!: <string, {data1,data2, video}> Vent:!: <int, [0,3]>

13 Click! Model (UI, Device, User) - Algorithm - Results - Personalization (Adaptation, Customization) - Arnauld - Consistency - Task Models

14 Model (UI, Device, User) - Algorithm - Results - Personalization (Adaptation, Customization) - Arnauld - Consistency - Task Models

15 Click! Model (UI, Device, User) - Algorithm - Results - Personalization (Adaptation, Customization) - Arnauld - Consistency - Task Models

16 Model (UI, Device, User) - Algorithm - Results - Personalization (Adaptation, Customization) - Arnauld - Consistency - Task Models

17 Media Types

18 Click! Subtyping

19

20

21 Road Map Motivation Modeling user interfaces in SUPPLE User interface generation as optimization Automatically adapting user interfaces A preliminary user study Adaptation in SUPPLE Customization support in SUPPLE Conclusions

22 User Interface Generation as Optimization Driven by a Cost function ($) -- estimated user effort to manipulate a rendering of the interface Cost function derived from device model Algorithm: branch-and-bound search with full constraint propagation at each step Performance: seconds on a desktop computer Model (UI, Device, User) - Algorithm - Results - Personalization (Adaptation, Customization) - Arnauld - Consistency - Task Models

23 User Interface Generation as Optimization Flexible with respect to screen size Versatile: Same algorithm for different devices Allows new concerns to be included in the rendering process, e.g.: Cross-device consistency Adaptation to usage patterns

24 Robustly Adapting to Different Screen Sizes

25 Single Algorithm -- Many Devices

26 Adapting To Usage Patterns SUPPLE with an empty trace SUPPLE with a lights-heavy trace

27 Road Map Motivation Modeling user interfaces in SUPPLE User interface generation as optimization Automatically adapting user interfaces A preliminary user study Adaptation in SUPPLE Customization support in SUPPLE Conclusions

28 Adapting To Usage Patterns By Complete Makeover SUPPLE with an empty trace Is this the only way to adapt? SUPPLE with a lights-heavy trace

29 Content Eliding

30 Visual Popout

31 Split Interfaces

32 Adaptation Strategies Efficiency Complete Makeover Confusion

33 Adaptation Strategies Efficiency Complete Makeover Content eliding Confusion

34 Adaptation Strategies Efficiency Complete Makeover Content eliding Visual Popout Confusion

35 Adaptation Strategies Efficiency Complete Makeover Split Content eliding Visual Popout Confusion

36 Adaptation Strategies Efficiency Complete Makeover Split Content eliding Visual Popout Confusion

37 Preliminary User Study Split Interface Visual Popout Interface

38 Preliminary User Study Results Split Interface strongly preferred over non-adaptive Both adaptive interfaces slightly faster than non-adaptive But: Visual Popout interface often found distracting

39 Sneak Peak: Followup Study In a different setting, we tested three adaptation strategies including Split Interface and Visual Popout Interface Users strongly preferred and were significantly faster using Split Interface Users strongly disliked Visual Popout Interface with Mary Czerwinski and Desney Tan

40 Split Interfaces in SUPPLE Adapting by promoting hard-to-reach but frequently used functionality

41 Split Interfaces in SUPPLE Click!

42 Split Interfaces in SUPPLE Click! Click!

43 Split Interfaces in SUPPLE Click!

44 Split Interfaces in SUPPLE Four extra clicks required just to print in landscape mode!

45 Split Interfaces in SUPPLE

46 System- Vs. User-Initiated Adaptation: Customization Customizing any part of the interface with drag and drop Out of order undo Generalization

47 Customization

48 Customization

49 Customization

50 Customization

51 Customization

52 Road Map Motivation Modeling user interfaces in SUPPLE User interface generation as optimization Automatically adapting user interfaces A preliminary user study Adaptation in SUPPLE Customization support in SUPPLE Conclusions

53 Conclusions A powerful, flexible and practical tool for automatically generating user interfaces for multiple devices Adaptation and customization offer the possibility of creating custom-made UIs for each user Support for distributed operation and caching makes it practical even on small devices

54 Can I Have It? Yes! We are awaiting permission to release SUPPLE as an open source toolkit Visit SUPPLE web site to sign up for the user s mailing list

55 Contributors Daniel Weld Dave Christianson Raphael Hoffmann Tal Shaked Kiera Henning Jing Jing Long Anthony Wu me

56 More Information SUPPLE: : supple interfaces Krzysztof Gajos: kgajos@cs.washington.edu Daniel Weld: weld@cs.washington.edu

57 More Information SUPPLE: : supple interfaces Krzysztof Gajos: kgajos@cs.washington.edu Daniel Weld: weld@cs.washington.edu

Exploring the Design Space for Adaptive Graphical User Interfaces

Exploring the Design Space for Adaptive Graphical User Interfaces Exploring the Design Space for Adaptive Graphical User Interfaces Krzysztof Gajos Mary Czerwinski Desney Tan Daniel S. Weld (University of Washington) (Microsoft Research) (Microsoft Research) (University

More information

Usable AI: Experience and Reflections

Usable AI: Experience and Reflections Usable AI: Experience and Reflections Krzysztof Z. Gajos Computer Science & Engineering University of Washington Seattle, WA 98195 kgajos@cs.washington.edu Daniel S. Weld Computer Science & Engineering

More information

Fast And Robust Interface Generation for Ubiquitous Applications

Fast And Robust Interface Generation for Ubiquitous Applications In Proceedings of Ubicomp 2005, Tokyo, Japan Fast And Robust Interface Generation for Ubiquitous Applications Krzysztof Gajos, David Christianson, Raphael Hoffmann, Tal Shaked, Kiera Henning, Jing Jing

More information

Decision-Theoretic User Interface Generation

Decision-Theoretic User Interface Generation Decision-Theoretic User Interface Generation Krzysztof Z. Gajos and Daniel S. Weld Department of Computer Science and Engineering University of Washington Seattle, WA 98195, USA {kgajos,weld}@cs.washington.edu

More information

Preference Elicitation for Interface Optimization

Preference Elicitation for Interface Optimization Preference Elicitation for Interface Optimization Krzysztof Gajos and Daniel S. Weld University of Washington, Seattle Krzysztof Gajos Motivation: Supple Model-Based Interface Renderer Func. Interface

More information

SUPPLE: Automatically Generating User Interfaces

SUPPLE: Automatically Generating User Interfaces SUPPLE: Automatically Generating User Interfaces Krzysztof Gajos University of Washington Seattle, WA, USA kgajos@cs.washington.edu Daniel S. Weld University of Washington Seattle, WA, USA weld@cs.washington.edu

More information

Ability-Based Design: Concept, Principles, and Examples

Ability-Based Design: Concept, Principles, and Examples Ability-Based Design: Concept, Principles, and Examples Jacob O. Wobbrock, Shaun K. Kane, Krzysztof Z. Gajos, Susumu Harada, and Jon Froehlich ACM Trans. Access. Comput., 3:9:1-9:27, April 2011 JACOB O.

More information

Introduction to Programming. Creating a Visual Basic Application

Introduction to Programming. Creating a Visual Basic Application Introduction to Programming Creating a Visual Basic Application Getting Started We will be using Visual Basic 2010 Express. It can be found in the Business & Computer Studies folder on the desktop This

More information

Assieme: Finding and Leveraging Implicit References in a Web Search Interface for Programmers

Assieme: Finding and Leveraging Implicit References in a Web Search Interface for Programmers Assieme: Finding and Leveraging Implicit References in a Web Search Interface for Programmers Raphael Hoffmann, James Fogarty, Daniel S. Weld University of Washington, Seattle UW CSE Industrial Affiliates

More information

Computing Technologies

Computing Technologies Computing Technologies Computing CPU, Memory, Communication Ubiquitous everywhere indefinite number of times Not really possible or desirable more than in traditional computing so widespread that unnoticed

More information

Intelligent Lighting Control User Interface through Design of Illuminance Distribution

Intelligent Lighting Control User Interface through Design of Illuminance Distribution 2009 Ninth International Conference on Intelligent Systems Design and Applications Intelligent Lighting Control User Interface through Design of Illuminance Distribution Tomoyuki Hiroyasu Department of

More information

SYSTEM UPGRADE, INC Making Good Computers Better. System Upgrade Teaches RAID

SYSTEM UPGRADE, INC Making Good Computers Better. System Upgrade Teaches RAID System Upgrade Teaches RAID In the growing computer industry we often find it difficult to keep track of the everyday changes in technology. At System Upgrade, Inc it is our goal and mission to provide

More information

Outline. Mate: A Tiny Virtual Machine for Sensor Networks Philip Levis and David Culler. Motivation. Applications. Mate.

Outline. Mate: A Tiny Virtual Machine for Sensor Networks Philip Levis and David Culler. Motivation. Applications. Mate. Outline Mate: A Tiny Virtual Machine for Sensor Networks Philip Levis and David Culler Presented by Mark Tamola CSE 521 Fall 2004 Motivation Mate Code Propagation Conclusions & Critiques 1 2 Motivation

More information

Interface Documentation in Solution Documentation

Interface Documentation in Solution Documentation Interface Documentation in Solution Documentation SAP Solution Manager 7.2, SP05 SAP DBS July 2017 Agenda Introduction Interfaces in Solution Documentation Interface Documentation Application Migration

More information

Human-Computer Interaction IS4300

Human-Computer Interaction IS4300 Human-Computer Interaction IS4300 1 Quiz 3 1 I5 due next class Your mission in this exercise is to implement a very simple Java painting applet. The applet must support the following functions: Draw curves,

More information

This study is brought to you courtesy of.

This study is brought to you courtesy of. This study is brought to you courtesy of www.google.com/think/insights The Role of Search in Deposit Account Shopping Google/Compete U.S., 2010 Table of Contents 1 Purpose of Study & Methodology 2 Key

More information

Material and some slide content from: - GoF Design Patterns Book. Design Patterns #1. Reid Holmes. Lecture 11 - Tuesday October

Material and some slide content from: - GoF Design Patterns Book. Design Patterns #1. Reid Holmes. Lecture 11 - Tuesday October Material and some slide content from: - GoF Design Patterns Book Design Patterns #1 Reid Holmes Lecture 11 - Tuesday October 19 2010. GoF design patterns!"#$%&'()*$+,--&.*' /.&,-("*,0 1-.23-2.,0 4&5,6(".,0

More information

Static Component Configuration Support for Real-Time Platforms

Static Component Configuration Support for Real-Time Platforms Static Component Configuration Support for Real-Time Platforms Chris Gill, Venkita Subramonian, and Liang-Jui Shen Dept. of Computer Science and Engineering Washington University St. Louis, MO 63130 {cdgill,venkita,ls1}@cse.wustl.edu

More information

Macintosh PC vs. Mac Common Commands. Introduction. Common Commands. Dock. Finder

Macintosh PC vs. Mac Common Commands. Introduction. Common Commands. Dock. Finder Macintosh PC vs. Mac Common Commands Introduction This self-help document will show you how to perform comparable functions that are on a PC on a Macintosh computer. The tables below describe the PC command

More information

SCALABLE STATISTICAL BUG ISOLATION

SCALABLE STATISTICAL BUG ISOLATION SCALABLE STATISTICAL BUG ISOLATION Paper by Ben Liblit, Mayur Naik, Alice X. Zheng, Alex Aiken, Michael I. Jordan Presented by Ben Mishkanian 2/5/2015 Statistical Debugging Idea: Use dynamic statistical

More information

Improving the Performance of Motor-Impaired Users with Automatically-Generated, Ability-Based Interfaces

Improving the Performance of Motor-Impaired Users with Automatically-Generated, Ability-Based Interfaces Improving the Performance of Motor-Impaired Users with Automatically-Generated, Ability-Based Interfaces Krzysztof Z. Gajos Computer Science & Eng. University of Washington Seattle, WA 98195 USA kgajos@cs.washington.edu

More information

Program Satisfaction Based on. the Perception of Bugs as Features

Program Satisfaction Based on. the Perception of Bugs as Features Program Satisfaction Based on the Perception of Bugs as Features Luke Badini Advisor: Matt Anderson March 15, 2017 Abstract Bugs are an ever-present problem facing software developers. What if you could

More information

A Qualitative Analysis of 3D Display Technology

A Qualitative Analysis of 3D Display Technology A Qualitative Analysis of 3D Display Technology Nicholas Blackhawk, Shane Nelson, and Mary Scaramuzza Computer Science St. Olaf College 1500 St. Olaf Ave Northfield, MN 55057 scaramum@stolaf.edu Abstract

More information

Virtual Execution Environments: Support and Tools

Virtual Execution Environments: Support and Tools Virtual Execution Environments: Support and Tools PIs: Bruce Childers #, Jack Davidson*, Mary Lou Soffa* Apala Guha*, Jason Hiser*, Naveen Kumar #, Jing Yang*, Min Zhao #, Shukang Zhou*, Kim Hazelwood*

More information

h Coherence Controllers

h Coherence Controllers High-Throughput h Coherence Controllers Anthony-Trung Nguyen Microprocessor Research Labs Intel Corporation 9/30/03 Motivations Coherence Controller (CC) throughput is bottleneck of scalable systems. CCs

More information

CS4120/4121/5120/5121 Spring 2018 Xi Type System Specification Cornell University Version of February 18, 2018

CS4120/4121/5120/5121 Spring 2018 Xi Type System Specification Cornell University Version of February 18, 2018 CS4120/4121/5120/5121 Spring 2018 Xi Type System Specification Cornell University Version of February 18, 2018 0 Changes 2/16: Added typing rule for empty blocks 1 Types The Xi type system uses a somewhat

More information

dcache as open-source project showcase for education Tigran Mkrtchyan for dcache team CHEP2018, Sofia,

dcache as open-source project showcase for education Tigran Mkrtchyan for dcache team CHEP2018, Sofia, dcache as open-source project showcase for education Tigran Mkrtchyan for dcache team CHEP2018, Sofia, 11.07.2018 76 installations for WLCG ~10 no GRID installations ~50% of LHC data dcache as open-source

More information

CSE 530A. B+ Trees. Washington University Fall 2013

CSE 530A. B+ Trees. Washington University Fall 2013 CSE 530A B+ Trees Washington University Fall 2013 B Trees A B tree is an ordered (non-binary) tree where the internal nodes can have a varying number of child nodes (within some range) B Trees When a key

More information

SEDA: An Architecture for Well-Conditioned, Scalable Internet Services

SEDA: An Architecture for Well-Conditioned, Scalable Internet Services SEDA: An Architecture for Well-Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University of California, Berkeley Operating Systems Principles

More information

Fiori Makers Club Showcase 8 Review. Kai Richter, SAP

Fiori Makers Club Showcase 8 Review. Kai Richter, SAP Fiori Makers Club Showcase 8 Review Kai Richter, SAP Why did we chose this app as showcase? This application to manage users is very well designed with many well thought-through solutions. The team didn

More information

VMware vcloud Architecture Toolkit Hybrid VMware vcloud Use Case

VMware vcloud Architecture Toolkit Hybrid VMware vcloud Use Case VMware vcloud Architecture Toolkit Version 2.0.1 October 2011 This product is protected by U.S. and international copyright and intellectual property laws. This product is covered by one or more patents

More information

wagtailmenus Documentation

wagtailmenus Documentation wagtailmenus Documentation Release 2.12 Andy Babic Nov 17, 2018 Contents 1 Full index 3 1.1 Overview and key concepts....................................... 3 1.1.1 Better control over top-level menu

More information

Integration Designer APEX vs. ID9.x

Integration Designer APEX vs. ID9.x Integration Designer APEX vs. ID9.x PROGRAMMING TREE STRUCTURE APEX has an organized approach complete with a system tree structure that is easy to build and reference as you build the project. One look

More information

A Disruptive Approach to Video Walls Making high-end video wall controllers simple, cost effective and flexible

A Disruptive Approach to Video Walls Making high-end video wall controllers simple, cost effective and flexible Userful Network Video Wall White Paper A Disruptive Approach to Video Walls Making high-end video wall controllers simple, cost effective and flexible Daniel Griffin Userful Corporation 2016.02.26 Introduction

More information

Out-Of-Core Sort-First Parallel Rendering for Cluster-Based Tiled Displays

Out-Of-Core Sort-First Parallel Rendering for Cluster-Based Tiled Displays Out-Of-Core Sort-First Parallel Rendering for Cluster-Based Tiled Displays Wagner T. Corrêa James T. Klosowski Cláudio T. Silva Princeton/AT&T IBM OHSU/AT&T EG PGV, Germany September 10, 2002 Goals Render

More information

Evaluation in Information Visualization. An Introduction to Information Visualization Techniques for Exploring Large Database. Jing Yang Fall 2005

Evaluation in Information Visualization. An Introduction to Information Visualization Techniques for Exploring Large Database. Jing Yang Fall 2005 An Introduction to Information Visualization Techniques for Exploring Large Database Jing Yang Fall 2005 1 Evaluation in Information Visualization Class 3 2 1 Motivation What are the advantages and limitations

More information

Iowa Cycling Project: Testing & Evaluation Plan

Iowa Cycling Project: Testing & Evaluation Plan IOWA STATE UNIVERSITY Iowa Cycling Project: Testing & Evaluation Plan [Type the document subtitle] Charles Dunbar, Ben Kallal, Ankit Patel, Peter Purcell, Kody Reynolds [Pick the date] [Type the abstract

More information

A Controller Testability Analysis and Enhancement Technique

A Controller Testability Analysis and Enhancement Technique A Controller Testability Analysis and Enhancement Technique Xinli Gu Erik Larsson, Krzysztof Kuchinski and Zebo Peng Synopsys, Inc. Dept. of Computer and Information Science 700 E. Middlefield Road Linköping

More information

Proxy Design Pattern

Proxy Design Pattern Department of Computer Science University of Pretoria 27 & 28 October 2014 Name and Classification: Proxy (Object Structural) Intent: Provide a surrogate or placeholder for another object to control access

More information

Beyond ILP II: SMT and variants. 1 Simultaneous MT: D. Tullsen, S. Eggers, and H. Levy

Beyond ILP II: SMT and variants. 1 Simultaneous MT: D. Tullsen, S. Eggers, and H. Levy EE482: Advanced Computer Organization Lecture #13 Processor Architecture Stanford University Handout Date??? Beyond ILP II: SMT and variants Lecture #13: Wednesday, 10 May 2000 Lecturer: Anamaya Sullery

More information

Homing Spread: Community Home-based Multi-copy Routing in Mobile Social Networks

Homing Spread: Community Home-based Multi-copy Routing in Mobile Social Networks TEMPLE UNIVERSITY Homing Spread: Community Home-based Multi-copy Routing in Mobile Social Networks Jie Wu a, Mingjun Xiao a,b, Liusheng Huang b a Temple University b University of Science and Technology

More information

JS Event Loop, Promises, Async Await etc. Slava Kim

JS Event Loop, Promises, Async Await etc. Slava Kim JS Event Loop, Promises, Async Await etc Slava Kim Synchronous Happens consecutively, one after another Asynchronous Happens later at some point in time Parallelism vs Concurrency What are those????

More information

Chapter 5 Hashing. Introduction. Hashing. Hashing Functions. hashing performs basic operations, such as insertion,

Chapter 5 Hashing. Introduction. Hashing. Hashing Functions. hashing performs basic operations, such as insertion, Introduction Chapter 5 Hashing hashing performs basic operations, such as insertion, deletion, and finds in average time 2 Hashing a hash table is merely an of some fixed size hashing converts into locations

More information

Greedy regular expression matching

Greedy regular expression matching Greedy regular expression matching Alain Frisch (ENS Paris) Luca Cardelli (MSR Cambridge) PLAN-X 2004 p.1/16 The matching problem Problem = project the structure of a regular expression on a flat sequence.

More information

Autodesk Revit Server Installation, Configuration and Workflow Revised 12/6/2010

Autodesk Revit Server Installation, Configuration and Workflow Revised 12/6/2010 Autodesk Revit Server Installation, Configuration and Workflow Revised 12/6/2010 The information contained in this document is time-sensitive as the technology and system requirements continually evolve.

More information

ADOBE DRIVE 4.2 USER GUIDE

ADOBE DRIVE 4.2 USER GUIDE ADOBE DRIVE 4.2 USER GUIDE 2 2013 Adobe Systems Incorporated. All rights reserved. Adobe Drive 4.2 User Guide Adobe, the Adobe logo, Creative Suite, Illustrator, InCopy, InDesign, and Photoshop are either

More information

MVC / MVP Reid Holmes

MVC / MVP Reid Holmes Material and some slide content from: - Krzysztof Czarnecki - Ian Sommerville - Head First Design Patterns MVC / MVP Reid Holmes [Image from: http://merroun.wordpress.com/2012/03/28/mvvm-mvp-and-mvc-software-patterns-againts-3-layered-architecture/

More information

Collaborative Networks of Image Sensors

Collaborative Networks of Image Sensors Collaborative Networks of Image Sensors Abbas El Gamal, EE Leonidas Guibas, CS Balaji Prabhakar, EE&CS Ali Ozer Ercan. EE Jaewon Shin, EE Danny Yang, CS Wireless Sensor Networks small Distributed systems

More information

Sema Foundation ICT Department. Lesson - 18

Sema Foundation ICT Department. Lesson - 18 Lesson - 18 1 Manipulating Windows We can work with several programs at a time in Windows. To make working with several programs at once very easy, we can change the size of the windows by: maximize minimize

More information

wagtailmenus Documentation

wagtailmenus Documentation wagtailmenus Documentation Release 2.11 Andy Babic Aug 02, 2018 Contents 1 Full index 3 1.1 Overview and key concepts....................................... 3 1.1.1 Better control over top-level menu

More information

Gradual Typing with Union and Intersection Types

Gradual Typing with Union and Intersection Types Gradual Typing with Union and Intersection Types Giuseppe Castagna, Victor Lanvin ICFP 17 September 6, 2017 1 / 14 Outline 1 Motivating Example 2 Types and Subtyping 3 Function Types and Operators 4 Conclusion

More information

Definition of Output Parameters for Sensitivity Studies of Drop Tests with Randomly Varying Orientation

Definition of Output Parameters for Sensitivity Studies of Drop Tests with Randomly Varying Orientation Definition of Output Parameters for Sensitivity Studies of Drop Tests with Randomly Varying Orientation Gerald Grewolls 1*, Alexander Ptchelintsev 1 1 Nokia Corporation Abstract To ensure the mechanical

More information

Chapter 03. Authors: John Hennessy & David Patterson. Copyright 2011, Elsevier Inc. All rights Reserved. 1

Chapter 03. Authors: John Hennessy & David Patterson. Copyright 2011, Elsevier Inc. All rights Reserved. 1 Chapter 03 Authors: John Hennessy & David Patterson Copyright 2011, Elsevier Inc. All rights Reserved. 1 Figure 3.3 Comparison of 2-bit predictors. A noncorrelating predictor for 4096 bits is first, followed

More information

Acknowledgements These slides are based on Kathryn McKinley s slides on garbage collection as well as E Christopher Lewis s slides

Acknowledgements These slides are based on Kathryn McKinley s slides on garbage collection as well as E Christopher Lewis s slides Garbage Collection Last time Compiling Object-Oriented Languages Today Motivation behind garbage collection Garbage collection basics Garbage collection performance Specific example of using GC in C++

More information

MVC / MVP Mei Nagappan

MVC / MVP Mei Nagappan Material and some slide content from: - Krzysztof Czarnecki - Ian Sommerville - Reid Holmes - Head First Design Patterns MVC / MVP Mei Nagappan [Image from: http://merroun.wordpress.com/2012/03/28/mvvm-mvp-and-mvc-software-patterns-againts-3-layered-architecture/

More information

Lecture 15 Pipelining & ILP Instructor: Prof. Falsafi

Lecture 15 Pipelining & ILP Instructor: Prof. Falsafi 18-547 Lecture 15 Pipelining & ILP Instructor: Prof. Falsafi Electrical & Computer Engineering Carnegie Mellon University Slides developed by Profs. Hill, Wood, Sohi, and Smith of University of Wisconsin

More information

Consulting Solutions WHITE PAPER Citrix XenDesktop XenDesktop Planning Guide: Hosted VM-Based Resource Allocation

Consulting Solutions WHITE PAPER Citrix XenDesktop XenDesktop Planning Guide: Hosted VM-Based Resource Allocation Consulting Solutions WHITE PAPER Citrix XenDesktop XenDesktop Planning Guide: Hosted VM-Based Resource Allocation www.citrix.com Overview One of the first things that must be determined with designing

More information

Placement & Routing. Lab 8. Placing Parts

Placement & Routing. Lab 8. Placing Parts Placement & Routing Lab 8 Placing Parts 121 Placement and Routing Lab 8: Placing Parts This lesson will show you how to place parts in PADS Layout. Placement can be driven from the schematic or directly

More information

Supercomputing with Commodity CPUs: Are Mobile SoCs Ready for HPC?

Supercomputing with Commodity CPUs: Are Mobile SoCs Ready for HPC? Supercomputing with Commodity CPUs: Are Mobile SoCs Ready for HPC? Nikola Rajovic, Paul M. Carpenter, Isaac Gelado, Nikola Puzovic, Alex Ramirez, Mateo Valero SC 13, November 19 th 2013, Denver, CO, USA

More information

ER/Studio Business Architect

ER/Studio Business Architect Product Documentation ER/Studio Business Architect New Features Guide Version 1.6.1 Published February 2010 CORPORATE HEADQUARTERS EMEA HEADQUARTERS ASIA-PACIFIC HEADQUARTERS 100 CALIFORNIA STREET 12TH

More information

A Scalable Multiprocessor for Real-time Signal Processing

A Scalable Multiprocessor for Real-time Signal Processing A Scalable Multiprocessor for Real-time Signal Processing Daniel Scherrer, Hans Eberle Institute for Computer Systems, Swiss Federal Institute of Technology CH-8092 Zurich, Switzerland {scherrer, eberle}@inf.ethz.ch

More information

Dreamweaver is a full-featured Web application

Dreamweaver is a full-featured Web application Create a Dreamweaver Site Dreamweaver is a full-featured Web application development tool. Dreamweaver s features not only assist you with creating and editing Web pages, but also with managing and maintaining

More information

Trees and Tree Traversal

Trees and Tree Traversal Trees and Tree Traversal Material adapted courtesy of Prof. Dave Matuszek at UPENN Definition of a tree A tree is a node with a value and zero or more children Depending on the needs of the program, the

More information

Interactive Volumetric Shadows in Participating Media with Single-Scattering

Interactive Volumetric Shadows in Participating Media with Single-Scattering Interactive Volumetric Shadows in Participating Media with Single-Scattering Chris Wyman University of Iowa Shaun Ramsey Washington College IEEE Symposium on Interactive Ray Tracing 2008 What is Volumetric

More information

CS 5523 Operating Systems: Midterm II - reivew Instructor: Dr. Tongping Liu Department Computer Science The University of Texas at San Antonio

CS 5523 Operating Systems: Midterm II - reivew Instructor: Dr. Tongping Liu Department Computer Science The University of Texas at San Antonio CS 5523 Operating Systems: Midterm II - reivew Instructor: Dr. Tongping Liu Department Computer Science The University of Texas at San Antonio Fall 2017 1 Outline Inter-Process Communication (20) Threads

More information

Achieving Out-of-Order Performance with Almost In-Order Complexity

Achieving Out-of-Order Performance with Almost In-Order Complexity Achieving Out-of-Order Performance with Almost In-Order Complexity Comprehensive Examination Part II By Raj Parihar Background Info: About the Paper Title Achieving Out-of-Order Performance with Almost

More information

Operating Systems (2INC0) 2017/18

Operating Systems (2INC0) 2017/18 Operating Systems (2INC0) 2017/18 Virtual Memory (10) Dr Courtesy of Dr I Radovanovic, Dr R Mak System rchitecture and Networking Group genda Recap memory management in early systems Principles of virtual

More information

Quick Reference Guide: and Fax Delivery Options in Oracle EBS R12

Quick Reference Guide:  and Fax Delivery Options in Oracle EBS R12 Quick Reference Guide: Email and Fax Delivery Options in Oracle EBS R12 Executive Summary With its new Submit Request Delivery Options button, Oracle EBS 12.1.3 brings new document delivery functionality

More information

A Location Model for Ambient Intelligence

A Location Model for Ambient Intelligence A Location Model for Ambient Intelligence National Institute of Informatics, Japan Email: ichiro@nii.ac.jp Outline 1. Motivation 2. Approach 3. Location Model 4. Design and Implementation 5. Applications

More information

Definition of a tree. A tree is like a binary tree, except that a node may have any number of children

Definition of a tree. A tree is like a binary tree, except that a node may have any number of children Trees Definition of a tree A tree is like a binary tree, except that a node may have any number of children Depending on the needs of the program, the children may or may not be ordered Like a binary tree,

More information

Tapestry. Code less, deliver more. Rayland Jeans

Tapestry. Code less, deliver more. Rayland Jeans Tapestry Code less, deliver more. Rayland Jeans What is Apache Tapestry? Apache Tapestry is an open-source framework designed to create scalable web applications in Java. Tapestry allows developers to

More information

THE ONLINER A VIP FOR MARKETERS. Slovenia

THE ONLINER A VIP FOR MARKETERS. Slovenia I THE ONLINER A VIP FOR MARKETERS Slovenia I INTERNET USAGE Internet usage is still growing slightly and is now close to the saturation point. Underlying developments such as a higher daily reach are stemming

More information

Introduction. hashing performs basic operations, such as insertion, better than other ADTs we ve seen so far

Introduction. hashing performs basic operations, such as insertion, better than other ADTs we ve seen so far Chapter 5 Hashing 2 Introduction hashing performs basic operations, such as insertion, deletion, and finds in average time better than other ADTs we ve seen so far 3 Hashing a hash table is merely an hashing

More information

Motivation for B-Trees

Motivation for B-Trees 1 Motivation for Assume that we use an AVL tree to store about 20 million records We end up with a very deep binary tree with lots of different disk accesses; log2 20,000,000 is about 24, so this takes

More information

SwapMe. Semantic Web Application Platform for the Mobile Ecosystem

SwapMe. Semantic Web Application Platform for the Mobile Ecosystem SwapMe Semantic Web Application Platform for the Mobile Ecosystem Ora Lassila (Nokia) Tim Berners-Lee, Daniel Jackson, David Karger, Daniel Weitzner (MIT) January 2006 1 NOKIA & MIT SwapMe kickoff / 2006-01-31

More information

LEVEL 3 SM WEB MEETING

LEVEL 3 SM WEB MEETING LEVEL 3 SM WEB MEETING REAL-TIME, INTUITIVE, ROBUST COLLABORATION AT YOUR FINGERTIPS JANUARY 2017 Today, organizations are finding that rudimentary web conferencing applications are inadequate and frustrating

More information

Getting Started with ArcGIS for Server. Charmel Menzel and Ken Gorton

Getting Started with ArcGIS for Server. Charmel Menzel and Ken Gorton Getting Started with ArcGIS for Server Charmel Menzel and Ken Gorton Agenda What is ArcGIS for Server? Types of Web services Publishing resources onto the Web Clients to ArcGIS for Server Editions and

More information

INTCP GloptLab

INTCP GloptLab INTCP 2009 University of Vienna 2009.09.20 Lisbon, Portugal Basics Problem Specification Algebraic optimization problems min s.t. f(x) G(x) v, x x, G(x) G(x) with uncertain constraint coefficients can

More information

Fast Inbound Top- K Query for Random Walk with Restart

Fast Inbound Top- K Query for Random Walk with Restart Fast Inbound Top- K Query for Random Walk with Restart Chao Zhang, Shan Jiang, Yucheng Chen, Yidan Sun, Jiawei Han University of Illinois at Urbana Champaign czhang82@illinois.edu 1 Outline Background

More information

B. Tech. Project Second Stage Report on

B. Tech. Project Second Stage Report on B. Tech. Project Second Stage Report on GPU Based Active Contours Submitted by Sumit Shekhar (05007028) Under the guidance of Prof Subhasis Chaudhuri Table of Contents 1. Introduction... 1 1.1 Graphic

More information

Getting started with M-Files

Getting started with M-Files Getting started with M-Files This guide helps you to get up to speed with M-Files. M-Files Desktop M-Files Desktop is the full-featured client UI for M-Files users and is the primary user interface that

More information

Rapid Application Development with APEX 5.0

Rapid Application Development with APEX 5.0 Rapid Application Development with APEX 5.0 Anthony Rayner Principal Member of Technical Staff Oracle Application Express Oracle UK The following is intended to outline Oracle s general product direction.

More information

Making Performance Understandable: Towards a Standard for Performance Counters on Manycore Architectures

Making Performance Understandable: Towards a Standard for Performance Counters on Manycore Architectures Parallel Hardware Parallel Applications IT industry (Silicon Valley) Parallel Software Users Making Performance Understandable: Towards a Standard for Performance Counters on Manycore Architectures Sarah

More information

A Key Theme of CIS 371: Parallelism. CIS 371 Computer Organization and Design. Readings. This Unit: (In-Order) Superscalar Pipelines

A Key Theme of CIS 371: Parallelism. CIS 371 Computer Organization and Design. Readings. This Unit: (In-Order) Superscalar Pipelines A Key Theme of CIS 371: arallelism CIS 371 Computer Organization and Design Unit 10: Superscalar ipelines reviously: pipeline-level parallelism Work on execute of one instruction in parallel with decode

More information

Physical characteristics (such as packaging, volatility, and erasability Organization.

Physical characteristics (such as packaging, volatility, and erasability Organization. CS 320 Ch 4 Cache Memory 1. The author list 8 classifications for memory systems; Location Capacity Unit of transfer Access method (there are four:sequential, Direct, Random, and Associative) Performance

More information

About the Final. Saturday, 7-10pm in Science Center 101. Closed book, closed notes. Not on the final: graphics, file I/O, vim, unix

About the Final. Saturday, 7-10pm in Science Center 101. Closed book, closed notes. Not on the final: graphics, file I/O, vim, unix CS 21 Final Review About the Final Saturday, 7-10pm in Science Center 101 Closed book, closed notes Not on the final: graphics, file I/O, vim, unix Expect Questions That Ask You To: Evaluate Python expressions

More information

NAT logging basics. David Ford OxCERT (OUCS)

NAT logging basics. David Ford OxCERT (OUCS) NAT logging basics David Ford OxCERT (OUCS) What is NAT? Formally - the method of modifying network address information in a packet whilst in transit The effect is to modify one (or more) of the Source

More information

Memory Hierarchy: Caches, Virtual Memory

Memory Hierarchy: Caches, Virtual Memory Memory Hierarchy: Caches, Virtual Memory Readings: 5.1-5.4, 5.8 Big memories are slow Computer Fast memories are small Processor Memory Devices Control Input Datapath Output Need to get fast, big memories

More information

Volume Rendering - Introduction. Markus Hadwiger Visual Computing Center King Abdullah University of Science and Technology

Volume Rendering - Introduction. Markus Hadwiger Visual Computing Center King Abdullah University of Science and Technology Volume Rendering - Introduction Markus Hadwiger Visual Computing Center King Abdullah University of Science and Technology Volume Visualization 2D visualization: slice images (or multi-planar reformation:

More information

USING POWERPOINT IN THE CLASSROOM LESSON 1 POWERPOINT BASICS

USING POWERPOINT IN THE CLASSROOM LESSON 1 POWERPOINT BASICS USING POWERPOINT IN THE CLASSROOM LESSON 1 POWERPOINT BASICS Objectives Start PowerPoint. Open an existing presentation. Save a presentation. Navigate through a presentation, and use the menus and toolbars.

More information

Note: This discussion is based on MacOS, (High Sierra). Some illustrations may differ when using other versions of macos or OS X.

Note: This discussion is based on MacOS, (High Sierra). Some illustrations may differ when using other versions of macos or OS X. Note: This discussion is based on MacOS, 10.13.5 (High Sierra). Some illustrations may differ when using other versions of macos or OS X. Previous presentations covered Some Lesser Known Mac Features to

More information

1/17/2012. What is an Operating System? Operating systems: From a user s perspective: System goals: What is system software? Operating systems:

1/17/2012. What is an Operating System? Operating systems: From a user s perspective: System goals: What is system software? Operating systems: Rensselaer Polytechnic Institute CSC 432 Operating Systems David Goldschmidt, Ph.D. What is an Operating System? The software interface between hardware and its users Operating systems: Execute user and

More information

Operating Systems. Lecture 09: Input/Output Management. Elvis C. Foster

Operating Systems. Lecture 09: Input/Output Management. Elvis C. Foster Operating Systems 141 Lecture 09: Input/Output Management Despite all the considerations that have discussed so far, the work of an operating system can be summarized in two main activities input/output

More information

Optimizing Testing Performance With Data Validation Option

Optimizing Testing Performance With Data Validation Option Optimizing Testing Performance With Data Validation Option 1993-2016 Informatica LLC. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording

More information

ECE 4750 Computer Architecture, Fall 2018 T15 Advanced Processors: VLIW Processors

ECE 4750 Computer Architecture, Fall 2018 T15 Advanced Processors: VLIW Processors ECE 4750 Computer Architecture, Fall 2018 T15 Advanced Processors: VLIW Processors School of Electrical and Computer Engineering Cornell University revision: 2018-11-28-13-01 1 Motivating VLIW Processors

More information

Performance Debugging for Distributed Systems of Black Boxes. Yinghua Wu, Haiyong Xie

Performance Debugging for Distributed Systems of Black Boxes. Yinghua Wu, Haiyong Xie Performance Debugging for Distributed Systems of Black Boxes Yinghua Wu, Haiyong Xie Outline Problem Problem statement & goals Overview of our approach Algorithms The nesting algorithm (RPC) The convolution

More information

Hillshade igen. Custom product generation with elevation data

Hillshade igen. Custom product generation with elevation data Hillshade igen Custom product generation with elevation data Version 1.0 Mark Lucas 22 May 2005 Overview Producing a product with igen If you haven t done so already, follow the hillshade tutorial and

More information

CMSC 611: Advanced Computer Architecture

CMSC 611: Advanced Computer Architecture CMSC 611: Advanced Computer Architecture, I/O and Disk Most slides adapted from David Patterson. Some from Mohomed Younis Main Background Performance of Main : Latency: affects cache miss penalty Access

More information

Three OPTIMIZING. Your System for Photoshop. Tuning for Performance

Three OPTIMIZING. Your System for Photoshop. Tuning for Performance Three OPTIMIZING Your System for Photoshop Tuning for Performance 72 Power, Speed & Automation with Adobe Photoshop This chapter goes beyond speeding up how you can work faster in Photoshop to how to make

More information

Parallelism and Concurrency. COS 326 David Walker Princeton University

Parallelism and Concurrency. COS 326 David Walker Princeton University Parallelism and Concurrency COS 326 David Walker Princeton University Parallelism What is it? Today's technology trends. How can we take advantage of it? Why is it so much harder to program? Some preliminary

More information