Graph: composable production systems in Clojure. Jason Wolfe Strange Loop 12

Size: px
Start display at page:

Download "Graph: composable production systems in Clojure. Jason Wolfe Strange Loop 12"

Transcription

1 Grah: comosable roduction systems in Clojure Jason Wolfe Strange Loo 12

2 Motivation Interesting software has: many comonents comlex web of deendencies Develoers want: simle, factored code easy testability tools for monitoring and debugging

3 Grah Grah is a simle, declarative way to exress system comosition A Grah is just a ma of functions that can deend on revious oututs Grahs are easy to create, reason about, test, and build uon i x {:x (fnk [i]...) :y (fnk [j x]...) :z (fnk [x y]...)} z j y inut {:i 1 :j 2} outut {:x 2 :y 5 :z 12}

4 Outline Prismatic Design Goals Grah: secs and comilation {:x (fnk [i]...) :y (fnk [j x]...) :z (fnk [x y]...)} Alications newsfeed generation roduction services resonse resonse

5 Prismatic Personalized, interest-based newsfeeds Build crawlers, toic models, grah analysis, story clustering,... Backend 99.9% Clojure Personalized ranked feeds in real-time (~200ms) getrismatic.com

6 Prismatic s roduction API service >100 comonents storage systems caches & indices ranking algorithms ec2-keys index snashots doc index Coordinate in intricate dance to serve feeds fast SQL feed-builder to news handlers server Relentlessly refactored env log store observer Still dozens of to-level comonents in comlex deendency network service-name ubsub logger service-info Parameters Remote Storage Caches, Indices Fns, Other Thread Pools udate index

7 The feed builder user query 20+ stes from query to ersonalized ranking, 20+ arameters Not a simle ieline resonse

8 The feed builder user query 20+ stes from query to ersonalized ranking, 20+ arameters Not a simle ieline > 10 feed tyes w/ slightly different stes, configurations resonse resonse

9 The feed builder user query 20+ stes from query to ersonalized ranking, 20+ arameters Not a simle ieline > 10 feed tyes w/ slightly different stes, configurations Suort for early stoing resonse resonse

10 Theme: comlexity of comosition Previous imlementations: defns with huge lets Unwieldy for large systems with comlex or olymorhic deendencies Hard to test, debug, and monitor resonse resonse

11 The monster let Tens of arameters, not comositional Mocks/olymorhic flow difficult Ad hoc monitoring & shutdown logic er item Core issue: structure of (de)comosition is locked u in an oaque function (defn start [{:keys [a,z]}] (let [s1 (store a...) s2 (store b...) db (sql-db c) t2 (cron s2 db...)... srv (server...)] (fn shutdown [] (.sto srv)... (.flush s1))))

12 Prismatic software engineering hilosohy Fine-grained, comosable abstractions (FCA) Libraries >> Frameworks Strive for simlicity, work with the language Grah is a FCA for comosition

13 Goal: declarative Declarative secifications fix monster let Exlicitly list comonents, deendencies Enable abstractions over comonents, reasoning about comosition Not new: Pregel, Dryad, Storm,...

14 Goal: simle Distill this idea to its simlest, most idiomatic exression a Grah sec is just a (Clojure) ma no XML files or interface hell Grahs are ordinary data maniulate them for free --> unexected alications It is better to have 100 functions oerate on one data structure than 10 functions on 10 data structures. - Alan Perlis

15 From let to Grah m xs n m2 (defn stats [{:keys [xs]}] (let [n (count xs) m (/ (sum xs) n) m2 (/ (sum sq xs) n) v (- m2 (* m m))] {:n n :m m :m2 m2 :v v})) v {:n (fn k [xs] (count xs)) :m (fn k [xs n] (/ (sum xs) n)) :m2 (fn k [xs n] (/ (sum sq xs) n)) :v (fn k [m m2] (- m2 (* m m)))}

16 Bring on the fnk fnk = keyword function Similar to {:keys []} destructuring nicer ot. arg. suort asserts that keys exist metadata about args Quite useful in itself Only macros in Grah (defnk foo [x y [s 1]] (+ x (* y s))) (= 8 (foo {:x 2 :y 3 :s 2})) (= 5 (foo {:x 2 :y 3})) (thrown? Ex. (foo {:x 2})) (= (meta foo) {:req-ks #{:x :y}} :ot-ks #{:s})

17 A Grah Secification A Grah is just a ma from keywords to fnks Required keys of each fnk secify grah relationshis Entire grah secifies a fnk to ma of results xs n {:n (fnk [xs] (count xs)) :m (fnk [xs n] (/ (sum xs) n)) :m2 (fnk [xs n] (/ (sum sq xs) n)) :v (fnk [m m2] (- m2 (* m m)))} m m2 v

18 A Grah Secification A Grah is just a ma from keywords to fnks Required keys of each fnk secify grah relationshis Entire grah secifies a fnk to ma of results xs n {:xs [ ]} {:n (fnk [xs] (count xs)) :m (fnk [xs n] (/ (sum xs) n)) :m2 (fnk [xs n] (/ (sum sq xs) n)) :v (fnk [m m2] (- m2 (* m m)))} m m2 v

19 A Grah Secification A Grah is just a ma from keywords to fnks Required keys of each fnk secify grah relationshis Entire grah secifies a fnk to ma of results xs n {:xs [ ]} {:n 4(fnk [xs] (count xs)) :m (fnk [xs n] (/ (sum xs) n)) :m2 (fnk [xs n] (/ (sum sq xs) n)) :v (fnk [m m2] (- m2 (* m m)))} m m2 v

20 A Grah Secification A Grah is just a ma from keywords to fnks Required keys of each fnk secify grah relationshis Entire grah secifies a fnk to ma of results xs n {:xs [ ]} {:n 4(fnk [xs] (count xs)) :m 3(fnk [xs n] (/ (sum xs) n)) :m2 (fnk [xs n] (/ (sum sq xs) n)) :v (fnk [m m2] (- m2 (* m m)))} m m2 v

21 A Grah Secification A Grah is just a ma from keywords to fnks Required keys of each fnk secify grah relationshis Entire grah secifies a fnk to ma of results xs n {:xs [ ]} {:n 4(fnk [xs] (count xs)) :m 3(fnk [xs n] (/ (sum xs) n)) :m (fnk [xs n] (/ (sum sq xs) n)) :v (fnk [m m2] (- m2 (* m m)))} m m2 v

22 A Grah Secification A Grah is just a ma from keywords to fnks Required keys of each fnk secify grah relationshis Entire grah secifies a fnk to ma of results xs n {:xs [ ]} {:n 4(fnk [xs] (count xs)) :m 3(fnk [xs n] (/ (sum xs) n)) :m (fnk [xs n] (/ (sum sq xs) n)) :v 3.5 (fnk [m m2] (- m2 (* m m)))} m m2 v

23 Comiling Grahs Comile grah to fnk that returns ma of oututs (def g {:n (fnk [xs]...) :m (fnk [xs n]...) :m2 (fnk [xs n]...) :v (fnk [m m2]...)}) (def stats (comile g)) (= (stats {:xs [ ]}) {:n 4 :m 3 :m :v 3.5)

24 Comiling Grahs Comile grah to fnk that returns ma of oututs error checked (def g {:n (fnk [xs]...) :m (fnk [xs n]...) :m2 (fnk [xs n]...) :v (fnk [m m2]...)}) (def stats (comile g)) (= (thrown? (stats {:xs [ ]}) {:n (Ex. 4 missing :m 3 :xs ) (stats :m {:x:v 1})) 3.5)

25 Comiling Grahs Comile grah to fnk that returns ma of oututs error checked can return lazy ma (def g {:n (fnk [xs]...) :m (fnk [xs n]...) :m2 (fnk [xs n]...) :v (fnk [m m2]...)}) (def stats (comile (lazy-comile g)) g)) (thrown? (= (stats (:m (stats {:xs {:xs [1 2 [13 5]})) 6]}) {:n 3) (Ex. 4 missing :m 3 :xs ) (stats :m {:x:v 1})) 3.5)

26 Comiling Grahs Comile grah to fnk that returns ma of oututs error checked can return lazy ma can auto-arallelize (def g {:n (fnk [xs]...) :m (fnk [xs n]...) :m2 (fnk [xs n]...) :v (fnk [m m2]...)}) (def stats (comile (lazy-comile (ar-comile g)) g)) (thrown? (= (stats (:m (:v (stats {:xs {:xs [1 2 [13 5]})) 6]}) {:n 3) 3.5) (Ex. 4 missing :m 3 :xs ) (stats :m {:x:v 1})) 3.5)

27 Comiling Grahs Comile grah to fnk that returns ma of oututs error checked can return lazy ma can auto-arallelize (def g {:n 2(fnk [xs]...) :m (fnk [xs n]...) :m2 (fnk [xs n]...) :v (fnk [m m2]...)}) (def stats (comile (lazy-comile (ar-comile g)) g)) (thrown? (= (stats (:m (:v (stats {:xs {:xs [1 2 [13 5]})) 6]}) {:n 3) 3.5) (Ex. 4 missing :m 3 :xs ) (stats :m {:x:v 1})) 3.5)

28 Comiling Grahs Comile grah to fnk that returns ma of oututs error checked can return lazy ma can auto-arallelize (def g {:n 2(fnk [xs]...) :m 3(fnk [xs n]...) :m2 13 (fnk [xs n]...) :v (fnk [m m2]...)}) (def stats (comile (lazy-comile (ar-comile g)) g)) (thrown? (= (stats (:m (:v (stats {:xs {:xs [1 2 [13 5]})) 6]}) {:n 3) 3.5) (Ex. 4 missing :m 3 :xs ) (stats :m {:x:v 1})) 3.5)

29 Comiling Grahs Comile grah to fnk that returns ma of oututs error checked can return lazy ma can auto-arallelize (def g {:n 2(fnk [xs]...) :m 3(fnk [xs n]...) :m2 13 (fnk [xs n]...) :v 4(fnk [m m2]...)}) (def stats (comile (lazy-comile (ar-comile g)) g)) (thrown? (= (stats (:m (:v (stats {:xs {:xs [1 2 [13 5]})) 6]}) {:n 3) 3.5) (Ex. 4 missing :m 3 :xs ) (stats :m {:x:v 1})) 3.5)

30 Comiling Grahs Comile grah to fnk that returns ma of oututs error checked can return lazy ma can auto-arallelize With more tooling, also comile grahs to roduction services Could comile to crossmachine toologies,... (def g {:n 2(fnk [xs]...) :m 3(fnk [xs n]...) :m2 13 (fnk [xs n]...) :v 4(fnk [m m2]...)}) (def stats (comile (lazy-comile (ar-comile g)) g)) (thrown? (= (stats (:m (:v (stats {:xs {:xs [1 2 [13 5]})) 6]}) {:n 3) 3.5) (Ex. 4 missing :m 3 :xs ) (stats :m {:x:v 1})) 3.5)

31 Before: feed builder Real-time ersonally ranked feeds 100-line fn exressed core comosition logic, ~20 arams several nested lets, escae hatches Comonent olymorhism (10 flavors of feeds) kludge of cases ball of multimethods rotocols + hacks resonse resonse

32 Feed builder in Grah Default arameters Grah with holes catures shared logic x y (def default-arams {:alha :hasers :stun}) resonse (def artial-grah {:query (fnk...)... :y (fnk [a x]..)... :res (fnk...)})

33 Feed builder in Grah Each feed tye secifies udated arameters missing/new grah nodes To make feed fn, just merge in udates comile resulting grah (def default-arams..) (def artial-grah..) (def toic-feed (comile-feed-fn {:alha 0.2} {:x (fnk...) :q (fnk...)})) (defn comile-feed-fn [arams nodes] (let [ (merge default-arams arams) g (comile (merge artial-grah nodes))] (fn feed [req] (g (merge req)))))

34 After: feed builder Simler, cleaner code Polymorhism is trivial (def toic-feed (comile-feed-fn {:alha 0.2} {:x (fnk...) :q (fnk...)})) (def home-feed (comile-feed-fn {:alha 0.4} {:x (fnk...) :r (fnk...) :s (fnk...)}))

35 After: feed builder Simler, cleaner code Polymorhism is trivial Early stoing for free via lazy comilation tt resonse

36 After: feed builder Simler, cleaner code Polymorhism is trivial Early stoing for free via lazy comilation tt (let [h (home-feed req)] (:tt h)) resonse

37 After: feed builder Simler, cleaner code Polymorhism is trivial Early stoing for free via lazy comilation v tt (let [h (home-feed req)] [(:tt h) (:v h)]) resonse

38 Also: easy to analyze Detect mis-wirings at grah comile time ositional constructor N N N N N N N N N N Avoid wrong # of args errors, arg ordering bugs N N N N N N N N Visualize grahs in 5 loc N N (defn edges [grah] (for [[k f] grah :let [{:keys [req-ks ot-ks]} (meta f)] arent (concat req-ks ot-ks)] [arent k]))

39 Also: easy to monitor Add monitoring and error reorting by maing over fnks Since a Grah is a Ma, can just use ma-vals node n avg ms errors :fetch :rank :client (defn observe-grah [g] (into {} (for [[k f] g] [k (with-meta (fn [m] (let [v (f m)] (rint k m v) v)) (meta f))])))

40 Examle 2: roduction API service (def ai-service (service {:service-name ai :backend-ort :server-threads 100} {:store1 (instance store {:tye :s3...}) :memo (fnk [store1] {:resource...})... :ai-server (...)}))

41 Service definitions Service definition = resource grah arameter ma + Crane reads arams for rovisioning, deloyment Grah = service code arameters are args cron jobs, handlers at leaves (def ai-service (service {:service-name ai :backend-ort :server-threads 100} {:store1 (instance store {:tye :s3...}) :memo (fnk [store1] {:resource...})... :ai-server (...)}))

42 Service definitions Service definition = resource grah arameter ma + Crane reads arams for rovisioning, deloyment Grah = service code arameters are args cron jobs, handlers at leaves (def ai-service (service {:service-name ai ec2-keys doc index index snashots :backend-ort :server-threads feed-builder 100} handlers server SQL {:store1 (instance store {:tye :s3...}) :memo observer log store (fnk [store1] service-name {:resource ubsub...}) logger service-info... Parameters Remote Storage Caches, Indices Fns, Other Thread Pools :ai-server (...)})) env udate index to news

43 Service built-ins arameters Parameters and grah nodes available by convention Interface with deloyment, other services, dashboard Smartly reconfigure with env -- test/staging/rod {:env :rod :instance-id i-123abc :ec2-keys... } resources {:nameserver... :observer... :ubsub... }

44 Nodes build Resources Resource = comonent e.g., database, cache, fn Plus metadata for shutdown, handlers,... Reresent as a ma Library of resources that work with builtins data stores rocessing queues recurring tasks... (defnk refreshing-atom [f eriod] (let [a (atom (f)) e (Exec/newExec)] (.schedatfixedrate e #(reset! a (f)) eriod) {:res a :shutdown #(.sd e)}))

45 Starting and Stoing Transform resource grah to ordinary grah ma over leaves, ull out :resource assoc new :shutdown key Run grah to start service, get clean shutdown hook (defn start-service [sec] ((->> (:grah sec) resource-transform comile) (:arameters sec))) (def ai (start-service ai-service)) ((:shutdown ai))

46 Sub-Comonents ec2-keys index snashots doc index feed-builder to news SQL handlers server env log store observer udate index service-name service-info logger ubsub Parameters Remote Storage Caches, Indices Fns, Other Thread Pools

47 Sub-Comonents ec2-keys index snashots doc index feed-builder to news SQL handlers server env log store observer udate index service-name service-info logger ubsub Parameters Remote Storage Caches, Indices Fns, Other Thread Pools

48 Sub-Comonents ec2-keys index snashots doc index feed-builder to news SQL handlers server env log store observer udate index service-name service-info logger ubsub Parameters Remote Storage Caches, Indices Fns, Other Thread Pools

49 Sub-Comonents Nodes can themselves be Grahs just nested mas Package comonents as sub-grahs Sub-grahs are transarent debugging monitoring imerfect abstractions (def write-back-cache {:store (instance store...) :write-queue (instance queue...) :eriodic-rune (instance task...)})

50 Easy system testing Old xxx-line lets were imossible to test With grah, just merge in mock node fnks no elaborate mocks objects or redefs automatic, safe shutdown (deftest home-feed-systest (test-service (assoc ai-service :doc-index (fnk [] {:res fake-idx}) :get-user (fnk [] {:res (constantly me)})) (is (= (titles (slur url)) [ doc1 doc2 ]))))

51 Summary Grah = way exress comlex comositions declaratively simly Widely alicable Simler code, better tooling Hoe to oen source soon (we re hiring!) resonse resonse

Why Prismatic Goes Faster With Clojure

Why Prismatic Goes Faster With Clojure Why Prismatic Goes Faster With Clojure One Slide Summary Fine-grained Monolithic 1. Composable > Frameworks Abstractions 2. lets you make FCA 3.

More information

Shuigeng Zhou. May 18, 2016 School of Computer Science Fudan University

Shuigeng Zhou. May 18, 2016 School of Computer Science Fudan University Query Processing Shuigeng Zhou May 18, 2016 School of Comuter Science Fudan University Overview Outline Measures of Query Cost Selection Oeration Sorting Join Oeration Other Oerations Evaluation of Exressions

More information

June 27, 2014 EuroClojure 2014 Krakow, Poland. Components. Just Enough

June 27, 2014 EuroClojure 2014 Krakow, Poland. Components. Just Enough June 27, 2014 EuroClojure 2014 Krakow, Poland Components Just Enough Structure @stuartsierra Presentation Business Logic DB SMS Email Presentation Thread Pool Business Logic Queues Public API Private API

More information

Argo Programming Guide

Argo Programming Guide Argo Programming Guide Evangelia Kasaaki, asmus Bo Sørensen February 9, 2015 Coyright 2014 Technical University of Denmark This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International

More information

1.5 Case Study. dynamic connectivity quick find quick union improvements applications

1.5 Case Study. dynamic connectivity quick find quick union improvements applications . Case Study dynamic connectivity quick find quick union imrovements alications Subtext of today s lecture (and this course) Stes to develoing a usable algorithm. Model the roblem. Find an algorithm to

More information

Object and Native Code Thread Mobility Among Heterogeneous Computers

Object and Native Code Thread Mobility Among Heterogeneous Computers Object and Native Code Thread Mobility Among Heterogeneous Comuters Bjarne Steensgaard Eric Jul Microsoft Research DIKU (Det. of Comuter Science) One Microsoft Way University of Coenhagen Redmond, WA 98052

More information

Using Standard AADL for COMPASS

Using Standard AADL for COMPASS Using Standard AADL for COMPASS (noll@cs.rwth-aachen.de) AADL Standards Meeting Aachen, Germany; July 5 8, 06 Overview Introduction SLIM Language Udates COMPASS Develoment Roadma Fault Injections Parametric

More information

A Petri net-based Approach to QoS-aware Configuration for Web Services

A Petri net-based Approach to QoS-aware Configuration for Web Services A Petri net-based Aroach to QoS-aware Configuration for Web s PengCheng Xiong, YuShun Fan and MengChu Zhou, Fellow, IEEE Abstract With the develoment of enterrise-wide and cross-enterrise alication integration

More information

Control plane and data plane. Computing systems now. Glacial process of innovation made worse by standards process. Computing systems once upon a time

Control plane and data plane. Computing systems now. Glacial process of innovation made worse by standards process. Computing systems once upon a time Classical work Architecture A A A Intro to SDN A A Oerating A Secialized Packet A A Oerating Secialized Packet A A A Oerating A Secialized Packet A A Oerating A Secialized Packet Oerating Secialized Packet

More information

Autonomic Physical Database Design - From Indexing to Multidimensional Clustering

Autonomic Physical Database Design - From Indexing to Multidimensional Clustering Autonomic Physical Database Design - From Indexing to Multidimensional Clustering Stehan Baumann, Kai-Uwe Sattler Databases and Information Systems Grou Technische Universität Ilmenau, Ilmenau, Germany

More information

AUTOMATIC GENERATION OF HIGH THROUGHPUT ENERGY EFFICIENT STREAMING ARCHITECTURES FOR ARBITRARY FIXED PERMUTATIONS. Ren Chen and Viktor K.

AUTOMATIC GENERATION OF HIGH THROUGHPUT ENERGY EFFICIENT STREAMING ARCHITECTURES FOR ARBITRARY FIXED PERMUTATIONS. Ren Chen and Viktor K. inuts er clock cycle Streaming ermutation oututs er clock cycle AUTOMATIC GENERATION OF HIGH THROUGHPUT ENERGY EFFICIENT STREAMING ARCHITECTURES FOR ARBITRARY FIXED PERMUTATIONS Ren Chen and Viktor K.

More information

has been retired This version of the software Sage Timberline Office Get Started Document Management 9.8 NOTICE

has been retired This version of the software Sage Timberline Office Get Started Document Management 9.8 NOTICE This version of the software has been retired Sage Timberline Office Get Started Document Management 9.8 NOTICE This document and the Sage Timberline Office software may be used only in accordance with

More information

Lecture 18. Today, we will discuss developing algorithms for a basic model for parallel computing the Parallel Random Access Machine (PRAM) model.

Lecture 18. Today, we will discuss developing algorithms for a basic model for parallel computing the Parallel Random Access Machine (PRAM) model. U.C. Berkeley CS273: Parallel and Distributed Theory Lecture 18 Professor Satish Rao Lecturer: Satish Rao Last revised Scribe so far: Satish Rao (following revious lecture notes quite closely. Lecture

More information

An Indexing Framework for Structured P2P Systems

An Indexing Framework for Structured P2P Systems An Indexing Framework for Structured P2P Systems Adina Crainiceanu Prakash Linga Ashwin Machanavajjhala Johannes Gehrke Carl Lagoze Jayavel Shanmugasundaram Deartment of Comuter Science, Cornell University

More information

32. Common Concurrency Problems.

32. Common Concurrency Problems. 32. Common Concurrency Problems. Oerating System: Three Easy Pieces AOS@UC 1 Common Concurrency Problems More recent work focuses on studying other tyes of common concurrency bugs. w Take a brief look

More information

Chapter 8: Adaptive Networks

Chapter 8: Adaptive Networks Chater : Adative Networks Introduction (.1) Architecture (.2) Backroagation for Feedforward Networks (.3) Jyh-Shing Roger Jang et al., Neuro-Fuzzy and Soft Comuting: A Comutational Aroach to Learning and

More information

Simulating Ocean Currents. Simulating Galaxy Evolution

Simulating Ocean Currents. Simulating Galaxy Evolution Simulating Ocean Currents (a) Cross sections (b) Satial discretization of a cross section Model as two-dimensional grids Discretize in sace and time finer satial and temoral resolution => greater accuracy

More information

COMP Parallel Computing. BSP (1) Bulk-Synchronous Processing Model

COMP Parallel Computing. BSP (1) Bulk-Synchronous Processing Model COMP 6 - Parallel Comuting Lecture 6 November, 8 Bulk-Synchronous essing Model Models of arallel comutation Shared-memory model Imlicit communication algorithm design and analysis relatively simle but

More information

The Anubis Service. Paul Murray Internet Systems and Storage Laboratory HP Laboratories Bristol HPL June 8, 2005*

The Anubis Service. Paul Murray Internet Systems and Storage Laboratory HP Laboratories Bristol HPL June 8, 2005* The Anubis Service Paul Murray Internet Systems and Storage Laboratory HP Laboratories Bristol HPL-2005-72 June 8, 2005* timed model, state monitoring, failure detection, network artition Anubis is a fully

More information

Space-efficient Region Filling in Raster Graphics

Space-efficient Region Filling in Raster Graphics "The Visual Comuter: An International Journal of Comuter Grahics" (submitted July 13, 1992; revised December 7, 1992; acceted in Aril 16, 1993) Sace-efficient Region Filling in Raster Grahics Dominik Henrich

More information

Randomized algorithms: Two examples and Yao s Minimax Principle

Randomized algorithms: Two examples and Yao s Minimax Principle Randomized algorithms: Two examles and Yao s Minimax Princile Maximum Satisfiability Consider the roblem Maximum Satisfiability (MAX-SAT). Bring your knowledge u-to-date on the Satisfiability roblem. Maximum

More information

Equality-Based Translation Validator for LLVM

Equality-Based Translation Validator for LLVM Equality-Based Translation Validator for LLVM Michael Ste, Ross Tate, and Sorin Lerner University of California, San Diego {mste,rtate,lerner@cs.ucsd.edu Abstract. We udated our Peggy tool, reviously resented

More information

ISO/IEC , the standard for Modula-2: Changes, Clarications and Additions. June 27, 1996

ISO/IEC , the standard for Modula-2: Changes, Clarications and Additions. June 27, 1996 ISO/IEC 10514-1, the standard for Modula-2: Changes, Clarications and Additions M. Schonhacker Vienna University of Technology Austria schoenhacker@eiunix.tuwien.ac.at C. Pronk Delft University of Technology

More information

Efficient Processing of Top-k Dominating Queries on Multi-Dimensional Data

Efficient Processing of Top-k Dominating Queries on Multi-Dimensional Data Efficient Processing of To-k Dominating Queries on Multi-Dimensional Data Man Lung Yiu Deartment of Comuter Science Aalborg University DK-922 Aalborg, Denmark mly@cs.aau.dk Nikos Mamoulis Deartment of

More information

Identity-sensitive Points-to Analysis for the Dynamic Behavior of JavaScript Objects

Identity-sensitive Points-to Analysis for the Dynamic Behavior of JavaScript Objects Identity-sensitive Points-to Analysis for the Dynamic Behavior of JavaScrit Objects Shiyi Wei and Barbara G. Ryder Deartment of Comuter Science, Virginia Tech, Blacksburg, VA, USA. {wei,ryder}@cs.vt.edu

More information

Introduction to Parallel Algorithms

Introduction to Parallel Algorithms CS 1762 Fall, 2011 1 Introduction to Parallel Algorithms Introduction to Parallel Algorithms ECE 1762 Algorithms and Data Structures Fall Semester, 2011 1 Preliminaries Since the early 1990s, there has

More information

Information Flow Based Event Distribution Middleware

Information Flow Based Event Distribution Middleware Information Flow Based Event Distribution Middleware Guruduth Banavar 1, Marc Kalan 1, Kelly Shaw 2, Robert E. Strom 1, Daniel C. Sturman 1, and Wei Tao 3 1 IBM T. J. Watson Research Center Hawthorne,

More information

PREDICTING LINKS IN LARGE COAUTHORSHIP NETWORKS

PREDICTING LINKS IN LARGE COAUTHORSHIP NETWORKS PREDICTING LINKS IN LARGE COAUTHORSHIP NETWORKS Kevin Miller, Vivian Lin, and Rui Zhang Grou ID: 5 1. INTRODUCTION The roblem we are trying to solve is redicting future links or recovering missing links

More information

An empirical analysis of loopy belief propagation in three topologies: grids, small-world networks and random graphs

An empirical analysis of loopy belief propagation in three topologies: grids, small-world networks and random graphs An emirical analysis of looy belief roagation in three toologies: grids, small-world networks and random grahs R. Santana, A. Mendiburu and J. A. Lozano Intelligent Systems Grou Deartment of Comuter Science

More information

Simulation Modelling Practice and Theory

Simulation Modelling Practice and Theory Simulation Modelling Practice and Theory 19 (2011) 494 515 Contents lists available at ScienceDirect Simulation Modelling Practice and Theory journal homeage: www.elsevier.com/locate/simat Simulating and

More information

AN ANALYTICAL MODEL DESCRIBING THE RELATIONSHIPS BETWEEN LOGIC ARCHITECTURE AND FPGA DENSITY

AN ANALYTICAL MODEL DESCRIBING THE RELATIONSHIPS BETWEEN LOGIC ARCHITECTURE AND FPGA DENSITY AN ANALYTICAL MODEL DESCRIBING THE RELATIONSHIPS BETWEEN LOGIC ARCHITECTURE AND FPGA DENSITY Andrew Lam 1, Steven J.E. Wilton 1, Phili Leong 2, Wayne Luk 3 1 Elec. and Com. Engineering 2 Comuter Science

More information

A Metaheuristic Scheduler for Time Division Multiplexed Network-on-Chip

A Metaheuristic Scheduler for Time Division Multiplexed Network-on-Chip Downloaded from orbit.dtu.dk on: Jan 25, 2019 A Metaheuristic Scheduler for Time Division Multilexed Network-on-Chi Sørensen, Rasmus Bo; Sarsø, Jens; Pedersen, Mark Ruvald; Højgaard, Jasur Publication

More information

7. Extensions and Annotations. Prof. Nagl, Informatik 3 (Software Engineering)

7. Extensions and Annotations. Prof. Nagl, Informatik 3 (Software Engineering) 7. Extensions and Annotations 1 Extensions and Annotations Aims Further imortant asects yielding to extensions o / annotations to architectural languages: not urther isolated view but details o ex. architecture

More information

Fast Distributed Process Creation with the XMOS XS1 Architecture

Fast Distributed Process Creation with the XMOS XS1 Architecture Communicating Process Architectures 20 P.H. Welch et al. (Eds.) IOS Press, 20 c 20 The authors and IOS Press. All rights reserved. Fast Distributed Process Creation with the XMOS XS Architecture James

More information

Attribute Grammars Fly First-Class

Attribute Grammars Fly First-Class Attribute Grammars Fly First-Class How to do Asect Oriented Programming in Haskell Marcos Viera Instituto de Comutación Universidad de la Reública Montevideo, Uruguay mviera@fing.edu.uy S. Doaitse Swierstra

More information

GDP: Using Dataflow Properties to Accurately Estimate Interference-Free Performance at Runtime

GDP: Using Dataflow Properties to Accurately Estimate Interference-Free Performance at Runtime GDP: Using Dataflow Proerties to Accurately Estimate Interference-Free Performance at Runtime Magnus Jahre Deartment of Comuter Science Norwegian University of Science and Technology (NTNU) Email: magnus.jahre@ntnu.no

More information

Mitigating the Impact of Decompression Latency in L1 Compressed Data Caches via Prefetching

Mitigating the Impact of Decompression Latency in L1 Compressed Data Caches via Prefetching Mitigating the Imact of Decomression Latency in L1 Comressed Data Caches via Prefetching by Sean Rea A thesis resented to Lakehead University in artial fulfillment of the requirement for the degree of

More information

GENERIC PILOT AND FLIGHT CONTROL MODEL FOR USE IN SIMULATION STUDIES

GENERIC PILOT AND FLIGHT CONTROL MODEL FOR USE IN SIMULATION STUDIES AIAA Modeling and Simulation Technologies Conference and Exhibit 5-8 August 22, Monterey, California AIAA 22-4694 GENERIC PILOT AND FLIGHT CONTROL MODEL FOR USE IN SIMULATION STUDIES Eric N. Johnson *

More information

Operations on Singly (Simply) Linked Lists

Operations on Singly (Simply) Linked Lists LEC. 4 College of Information Technology / Software Deartment.. Data Structures / Second Class / 2016-2017 InsertFirst Oerations on Singly (Simly) Linked Lists The insertfirst() method of LinkList inserts

More information

Incremental Planning of Multi-layer Elastic Optical Networks

Incremental Planning of Multi-layer Elastic Optical Networks Incremental Planning of Multi-layer Elastic Otical Networks P. Paanikolaou, K. Christodoulooulos, and E. Varvarigos School of Electrical and Comuter Engineering, National Technical University of Athens,

More information

36. I/O Devices. Operating System: Three Easy Pieces 1

36. I/O Devices. Operating System: Three Easy Pieces 1 36. I/O Devices Oerating System: Three Easy Pieces AOS@UC 1 I/O Devices I/O is critical to comuter system to interact with systems. Issue : w How should I/O be integrated into systems? w What are the general

More information

OMNI: An Efficient Overlay Multicast. Infrastructure for Real-time Applications

OMNI: An Efficient Overlay Multicast. Infrastructure for Real-time Applications OMNI: An Efficient Overlay Multicast Infrastructure for Real-time Alications Suman Banerjee, Christoher Kommareddy, Koushik Kar, Bobby Bhattacharjee, Samir Khuller Abstract We consider an overlay architecture

More information

33. Event-based Concurrency

33. Event-based Concurrency 33. Event-based Concurrency Oerating System: Three Easy Pieces AOS@UC 1 Event-based Concurrency A different style of concurrent rogramming without threads w Used in GUI-based alications, some tyes of internet

More information

A Deep Architecture for Matching Short Texts

A Deep Architecture for Matching Short Texts A Dee Architecture for Matching Short Texts Zhengdong Lu Noah s Ark Lab Huawei Technologies Co. Ltd. Sha Tin, Hong Kong Lu.Zhengdong@huawei.com Hang Li Noah s Ark Lab Huawei Technologies Co. Ltd. Sha Tin,

More information

SPITFIRE: Scalable Parallel Algorithms for Test Set Partitioned Fault Simulation

SPITFIRE: Scalable Parallel Algorithms for Test Set Partitioned Fault Simulation To aear in IEEE VLSI Test Symosium, 1997 SITFIRE: Scalable arallel Algorithms for Test Set artitioned Fault Simulation Dili Krishnaswamy y Elizabeth M. Rudnick y Janak H. atel y rithviraj Banerjee z y

More information

MSO Exam January , 17:00 20:00

MSO Exam January , 17:00 20:00 MSO 2014 2015 Exam January 26 2015, 17:00 20:00 Name: Student number: Please read the following instructions carefully: Fill in your name and student number above. Be reared to identify yourself with your

More information

BGP Path visibility issues.

BGP Path visibility issues. BGP Path visibility issues Pierre.Francois@UCLouvain.be ToC ibgp draft-ietf-idr-add-aths Why doing Add-aths draft-ietf-idr-add-aths-guidelines (draft-uttaro-idr-add-aths-guidelines) Why only a small subset

More information

Protecting Mobile Agents against Malicious Host Attacks Using Threat Diagnostic AND/OR Tree

Protecting Mobile Agents against Malicious Host Attacks Using Threat Diagnostic AND/OR Tree Protecting Mobile Agents against Malicious Host Attacks Using Threat Diagnostic AND/OR Tree Magdy Saeb, Meer Hamza, Ashraf Soliman. Arab Academy for Science, Technology & Maritime Transort Comuter Engineering

More information

GRANCLOUD: A REAL-TIME GRANULAR SYNTHESIS APPLICATION AND ITS IMPLEMENTATION IN THE INTERACTIVE COMPOSITION CREO. Terry Alan Lee, B.M.

GRANCLOUD: A REAL-TIME GRANULAR SYNTHESIS APPLICATION AND ITS IMPLEMENTATION IN THE INTERACTIVE COMPOSITION CREO. Terry Alan Lee, B.M. GRANCLOUD: A REAL-TIME GRANULAR SYNTHESIS APPLICATION AND ITS IMPLEMENTATION IN THE INTERACTIVE COMPOSITION CREO Terry Alan Lee, B.M. Thesis Preared or the Degree o MASTER OF MUSIC UNIVERSITY OF NORTH

More information

Improving Trust Estimates in Planning Domains with Rare Failure Events

Improving Trust Estimates in Planning Domains with Rare Failure Events Imroving Trust Estimates in Planning Domains with Rare Failure Events Colin M. Potts and Kurt D. Krebsbach Det. of Mathematics and Comuter Science Lawrence University Aleton, Wisconsin 54911 USA {colin.m.otts,

More information

Source-to-Source Code Generation Based on Pattern Matching and Dynamic Programming

Source-to-Source Code Generation Based on Pattern Matching and Dynamic Programming Source-to-Source Code Generation Based on Pattern Matching and Dynamic Programming Weimin Chen, Volker Turau TR-93-047 August, 1993 Abstract This aer introduces a new technique for source-to-source code

More information

10 File System Mass Storage Structure Mass Storage Systems Mass Storage Structure Mass Storage Structure FILE SYSTEM 1

10 File System Mass Storage Structure Mass Storage Systems Mass Storage Structure Mass Storage Structure FILE SYSTEM 1 10 File System 1 We will examine this chater in three subtitles: Mass Storage Systems OERATING SYSTEMS FILE SYSTEM 1 File System Interface File System Imlementation 10.1.1 Mass Storage Structure 3 2 10.1

More information

Sage Estimating. (formerly Sage Timberline Estimating) Options Guide

Sage Estimating. (formerly Sage Timberline Estimating) Options Guide Sage Estimating (formerly Sage Timberline Estimating) Otions Guide This is a ublication of Sage Software, Inc. Document Number 1112ER 09/2012 2012 Sage Software, Inc. All rights reserved. Sage, the Sage

More information

Distributed Algorithms

Distributed Algorithms Course Outline With grateful acknowledgement to Christos Karamanolis for much of the material Jeff Magee & Jeff Kramer Models of distributed comuting Synchronous message-assing distributed systems Algorithms

More information

A CLASS OF STRUCTURED LDPC CODES WITH LARGE GIRTH

A CLASS OF STRUCTURED LDPC CODES WITH LARGE GIRTH A CLASS OF STRUCTURED LDPC CODES WITH LARGE GIRTH Jin Lu, José M. F. Moura, and Urs Niesen Deartment of Electrical and Comuter Engineering Carnegie Mellon University, Pittsburgh, PA 15213 jinlu, moura@ece.cmu.edu

More information

IMS Network Deployment Cost Optimization Based on Flow-Based Traffic Model

IMS Network Deployment Cost Optimization Based on Flow-Based Traffic Model IMS Network Deloyment Cost Otimization Based on Flow-Based Traffic Model Jie Xiao, Changcheng Huang and James Yan Deartment of Systems and Comuter Engineering, Carleton University, Ottawa, Canada {jiexiao,

More information

Sensitivity Analysis for an Optimal Routing Policy in an Ad Hoc Wireless Network

Sensitivity Analysis for an Optimal Routing Policy in an Ad Hoc Wireless Network 1 Sensitivity Analysis for an Otimal Routing Policy in an Ad Hoc Wireless Network Tara Javidi and Demosthenis Teneketzis Deartment of Electrical Engineering and Comuter Science University of Michigan Ann

More information

Implementations of Partial Document Ranking Using. Inverted Files. Wai Yee Peter Wong. Dik Lun Lee

Implementations of Partial Document Ranking Using. Inverted Files. Wai Yee Peter Wong. Dik Lun Lee Imlementations of Partial Document Ranking Using Inverted Files Wai Yee Peter Wong Dik Lun Lee Deartment of Comuter and Information Science, Ohio State University, 36 Neil Ave, Columbus, Ohio 4321, U.S.A.

More information

Leak Detection Modeling and Simulation for Oil Pipeline with Artificial Intelligence Method

Leak Detection Modeling and Simulation for Oil Pipeline with Artificial Intelligence Method ITB J. Eng. Sci. Vol. 39 B, No. 1, 007, 1-19 1 Leak Detection Modeling and Simulation for Oil Pieline with Artificial Intelligence Method Pudjo Sukarno 1, Kuntjoro Adji Sidarto, Amoranto Trisnobudi 3,

More information

Performance and Area Tradeoffs in Space-Qualified FPGA-Based Time-of-Flight Systems

Performance and Area Tradeoffs in Space-Qualified FPGA-Based Time-of-Flight Systems Performance and Area Tradeoffs in Sace-Qualified FPGA-Based Time-of-Flight Systems Whitney Hsiong 1, Steve Huntzicker 1, Kevin King 1, Austin Lee 1, Chen Lim 1, Jason Wang 1, Sarah Harris, Ph.D. 1, Jörg-Micha

More information

Lecture 2: Fixed-Radius Near Neighbors and Geometric Basics

Lecture 2: Fixed-Radius Near Neighbors and Geometric Basics structure arises in many alications of geometry. The dual structure, called a Delaunay triangulation also has many interesting roerties. Figure 3: Voronoi diagram and Delaunay triangulation. Search: Geometric

More information

in Distributed Systems Department of Computer Science, Keio University into four forms according to asynchrony and real-time properties.

in Distributed Systems Department of Computer Science, Keio University into four forms according to asynchrony and real-time properties. Asynchrony and Real-Time in Distributed Systems Mario Tokoro? and Ichiro Satoh?? Deartment of Comuter Science, Keio University 3-14-1, Hiyoshi, Kohoku-ku, Yokohama, 223, Jaan Tel: +81-45-56-115 Fax: +81-45-56-1151

More information

α i k (βi k ) Request ratio of rank-k chunks (a specific chunk) at node v i g i k Size of set Ck S i Cache size of node v i

α i k (βi k ) Request ratio of rank-k chunks (a specific chunk) at node v i g i k Size of set Ck S i Cache size of node v i ing Hierarchical Caches in Content-Centric Networs Zixiao Jia,PengZhang,JiweiHuang,ChuangLin, and John C. S. Lui Tsinghua National Laboratory for Information Science and Technology Det. of Comuter Science

More information

2. Introduction to Operating Systems

2. Introduction to Operating Systems 2. Introduction to Oerating Systems Oerating System: Three Easy Pieces 1 What a haens when a rogram runs? A running rogram executes instructions. 1. The rocessor fetches an instruction from memory. 2.

More information

Efficient Parallel Hierarchical Clustering

Efficient Parallel Hierarchical Clustering Efficient Parallel Hierarchical Clustering Manoranjan Dash 1,SimonaPetrutiu, and Peter Scheuermann 1 Deartment of Information Systems, School of Comuter Engineering, Nanyang Technological University, Singaore

More information

CASCH - a Scheduling Algorithm for "High Level"-Synthesis

CASCH - a Scheduling Algorithm for High Level-Synthesis CASCH a Scheduling Algorithm for "High Level"Synthesis P. Gutberlet H. Krämer W. Rosenstiel Comuter Science Research Center at the University of Karlsruhe (FZI) HaidundNeuStr. 1014, 7500 Karlsruhe, F.R.G.

More information

Collective communication: theory, practice, and experience

Collective communication: theory, practice, and experience CONCURRENCY AND COMPUTATION: PRACTICE AND EXPERIENCE Concurrency Comutat.: Pract. Exer. 2007; 19:1749 1783 Published online 5 July 2007 in Wiley InterScience (www.interscience.wiley.com)..1206 Collective

More information

CENTRAL AND PARALLEL PROJECTIONS OF REGULAR SURFACES: GEOMETRIC CONSTRUCTIONS USING 3D MODELING SOFTWARE

CENTRAL AND PARALLEL PROJECTIONS OF REGULAR SURFACES: GEOMETRIC CONSTRUCTIONS USING 3D MODELING SOFTWARE CENTRAL AND PARALLEL PROJECTIONS OF REGULAR SURFACES: GEOMETRIC CONSTRUCTIONS USING 3D MODELING SOFTWARE Petra Surynková Charles University in Prague, Faculty of Mathematics and Physics, Sokolovská 83,

More information

Unifying Explicit and Implicit Feedback for Top-N Recommendation

Unifying Explicit and Implicit Feedback for Top-N Recommendation 017 IEEE nd International Conference on Big Data Analysis Unifying Exlicit and Imlicit Feedback for To-N Recommendation Siing Liu, Xiaohan Tu and Renfa Li College of Comuter Science and Electronic Engineering

More information

A Parallel Algorithm for Constructing Obstacle-Avoiding Rectilinear Steiner Minimal Trees on Multi-Core Systems

A Parallel Algorithm for Constructing Obstacle-Avoiding Rectilinear Steiner Minimal Trees on Multi-Core Systems A Parallel Algorithm for Constructing Obstacle-Avoiding Rectilinear Steiner Minimal Trees on Multi-Core Systems Cheng-Yuan Chang and I-Lun Tseng Deartment of Comuter Science and Engineering Yuan Ze University,

More information

One-Node-Based Mobile Architecture for a Better QoS Control

One-Node-Based Mobile Architecture for a Better QoS Control One-ode-Based obile rchitecture for a Better Qo ontrol Khadija aoud, Philie Herbelin Orange Labs ssy Les oulineaux, rance {khadija.daoud, hilie.herbelin}@orange-ftgrou.com oël resi nstitut TELEO udparis

More information

This is the peer reviewed version of the following article: Susín, A. and Ramírez, J.E. (2015). Segmentation-based skinning. Computer animation and

This is the peer reviewed version of the following article: Susín, A. and Ramírez, J.E. (2015). Segmentation-based skinning. Computer animation and This is the eer reviewed version of the following article: Susín, A. and Ramírez, J.E. (). Segmentation-based skinning. Comuter animation and virtual worlds, (), 1 which has been ublished in final form

More information

Storage Allocation CSE 143. Pointers, Arrays, and Dynamic Storage Allocation. Pointer Variables. Pointers: Review. Pointers and Types

Storage Allocation CSE 143. Pointers, Arrays, and Dynamic Storage Allocation. Pointer Variables. Pointers: Review. Pointers and Types CSE 143 Pointers, Arrays, and Dynamic Storage Allocation [Chater 4,. 148-157, 172-177] Storage Allocation Storage (memory) is a linear array of cells (bytes) Objects of different tyes often reuire differing

More information

Lazytest Better Living Through Protocols. Stuart Sierra. Clojure NYC April 15, 2010

Lazytest Better Living Through Protocols. Stuart Sierra. Clojure NYC April 15, 2010 Lazytest Better Living Through Protocols Stuart Sierra Clojure NYC April 15, 2010 @stuartsierra #clojure clojure.core: tests as metadata (defn add ([x y] (+ x y)) {:test (fn [] (assert (= 7 (add 3 4))))})

More information

Verification Options. To Store Or Not To Store? Inside the UPPAAL tool. Inactive (passive) Clock Reduction. Global Reduction

Verification Options. To Store Or Not To Store? Inside the UPPAAL tool. Inactive (passive) Clock Reduction. Global Reduction Inside the UPPAAL tool Data Structures DBM s (Difference Bounds Matrices) Canonical and Minimal Constraints Algorithms Reachability analysis Liveness checking Termination Verification Otions Verification

More information

10. Parallel Methods for Data Sorting

10. Parallel Methods for Data Sorting 10. Parallel Methods for Data Sorting 10. Parallel Methods for Data Sorting... 1 10.1. Parallelizing Princiles... 10.. Scaling Parallel Comutations... 10.3. Bubble Sort...3 10.3.1. Sequential Algorithm...3

More information

Architecture-driven verfication of concurrent systems.*

Architecture-driven verfication of concurrent systems.* National Research Council Canada Institute for Information Technology Conseil national de recherches Canada Institut de technologie de l information Architecture-driven verfication of concurrent systems.*

More information

Objectives. Part 1: Implement Friction Compensation.

Objectives. Part 1: Implement Friction Compensation. ME 446 Laboratory # Inverse Dynamics Joint Control Reort is due at the beginning of your lab time the week of Aril 9 th. One reort er grou. Lab sessions will be held the weeks of March th, March 6 th,

More information

A New and Efficient Algorithm-Based Fault Tolerance Scheme for A Million Way Parallelism

A New and Efficient Algorithm-Based Fault Tolerance Scheme for A Million Way Parallelism A New and Efficient Algorithm-Based Fault Tolerance Scheme for A Million Way Parallelism Erlin Yao, Mingyu Chen, Rui Wang, Wenli Zhang, Guangming Tan Key Laboratory of Comuter System and Architecture Institute

More information

CS252 Graduate Computer Architecture Spring 2014 Lecture 6: Modern Out- of- Order Processors

CS252 Graduate Computer Architecture Spring 2014 Lecture 6: Modern Out- of- Order Processors CS252 Graduate Comuter Architecture Sring 2014 Lecture 6: Modern Out- of- Order Processors Krste Asanovic krste@eecs.berkeley.edu htt://inst.eecs.berkeley.edu/~cs252/s14 CS252, Sring 2014, Lecture 6 Last

More information

A Study of Protocols for Low-Latency Video Transport over the Internet

A Study of Protocols for Low-Latency Video Transport over the Internet A Study of Protocols for Low-Latency Video Transort over the Internet Ciro A. Noronha, Ph.D. Cobalt Digital Santa Clara, CA ciro.noronha@cobaltdigital.com Juliana W. Noronha University of California, Davis

More information

Parallel Algorithms for the Summed Area Table on the Asynchronous Hierarchical Memory Machine, with GPU implementations

Parallel Algorithms for the Summed Area Table on the Asynchronous Hierarchical Memory Machine, with GPU implementations Parallel Algorithms for the Summed Area Table on the Asynchronous Hierarchical Memory Machine, ith GPU imlementations Akihiko Kasagi, Koji Nakano, and Yasuaki Ito Deartment of Information Engineering Hiroshima

More information

Architecture description languages for programmable embedded systems

Architecture description languages for programmable embedded systems Architecture descrition languages for rogrammable embedded systems P. Mishra and N. Dutt Abstract: Embedded systems resent a tremendous oortunity to customise designs by exloiting the alication behaviour.

More information

521493S Computer Graphics Exercise 3 (Chapters 6-8)

521493S Computer Graphics Exercise 3 (Chapters 6-8) 521493S Comuter Grahics Exercise 3 (Chaters 6-8) 1 Most grahics systems and APIs use the simle lighting and reflection models that we introduced for olygon rendering Describe the ways in which each of

More information

Improved heuristics for the single machine scheduling problem with linear early and quadratic tardy penalties

Improved heuristics for the single machine scheduling problem with linear early and quadratic tardy penalties Imroved heuristics for the single machine scheduling roblem with linear early and quadratic tardy enalties Jorge M. S. Valente* LIAAD INESC Porto LA, Faculdade de Economia, Universidade do Porto Postal

More information

Sage Estimating (SQL) (formerly Sage Timberline Estimating) Installation and Administration Guide. Version 16.11

Sage Estimating (SQL) (formerly Sage Timberline Estimating) Installation and Administration Guide. Version 16.11 Sage Estimating (SQL) (formerly Sage Timberline Estimating) Installation and Administration Guide Version 16.11 This is a ublication of Sage Software, Inc. 2016 The Sage Grou lc or its licensors. All rights

More information

Using Permuted States and Validated Simulation to Analyze Conflict Rates in Optimistic Replication

Using Permuted States and Validated Simulation to Analyze Conflict Rates in Optimistic Replication Using Permuted States and Validated Simulation to Analyze Conflict Rates in Otimistic Relication An-I A. Wang Comuter Science Deartment Florida State University Geoff H. Kuenning Comuter Science Deartment

More information

CS 428: Fall Introduction to. Geometric Transformations. Andrew Nealen, Rutgers, /15/2010 1

CS 428: Fall Introduction to. Geometric Transformations. Andrew Nealen, Rutgers, /15/2010 1 CS 428: Fall 21 Introduction to Comuter Grahics Geometric Transformations Andrew Nealen, Rutgers, 21 9/15/21 1 Toic overview Image formation and OenGL (last week) Modeling the image formation rocess OenGL

More information

Record Route IP Traceback: Combating DoS Attacks and the Variants

Record Route IP Traceback: Combating DoS Attacks and the Variants Record Route IP Traceback: Combating DoS Attacks and the Variants Abdullah Yasin Nur, Mehmet Engin Tozal University of Louisiana at Lafayette, Lafayette, LA, US ayasinnur@louisiana.edu, metozal@louisiana.edu

More information

Models for Advancing PRAM and Other Algorithms into Parallel Programs for a PRAM-On-Chip Platform

Models for Advancing PRAM and Other Algorithms into Parallel Programs for a PRAM-On-Chip Platform Models for Advancing PRAM and Other Algorithms into Parallel Programs for a PRAM-On-Chi Platform Uzi Vishkin George C. Caragea Bryant Lee Aril 2006 University of Maryland, College Park, MD 20740 UMIACS-TR

More information

Source level Unrolling of Loops Containing Pointers and Array References

Source level Unrolling of Loops Containing Pointers and Array References Source level Unrolling of Loos Containing Pointers and Array References Yosi Ben Asher Jawad Haj-Yihia CS deartment, Haifa University, Israel. yosi@cs.haifa.ac.il, jawad.haj-yihia@intel.com Abstract We

More information

43. Log-structured File Systems

43. Log-structured File Systems 43. Log-structured File Systems Oerating System: Three Easy Pieces AOS@UC 1 LFS: Log-structured File System Proosed by Stanford back in 91 Motivated by: w DRAM Memory sizes where growing. w Large ga between

More information

Complexity Issues on Designing Tridiagonal Solvers on 2-Dimensional Mesh Interconnection Networks

Complexity Issues on Designing Tridiagonal Solvers on 2-Dimensional Mesh Interconnection Networks Journal of Comuting and Information Technology - CIT 8, 2000, 1, 1 12 1 Comlexity Issues on Designing Tridiagonal Solvers on 2-Dimensional Mesh Interconnection Networks Eunice E. Santos Deartment of Electrical

More information

BGP Add-Paths. Hundreds of proposals hiding behind one...

BGP Add-Paths. Hundreds of proposals hiding behind one... BGP Add-Paths Hundreds of roosals hiding behind one... Pierre.Francois@UCLouvain.be ToC draft-ietf-idr-add-aths Why doing Add-aths draft-ietf-idr-add-aths-guidelines (draft-uttaro-idr-add-aths-guidelines)

More information

Statistical Detection for Network Flooding Attacks

Statistical Detection for Network Flooding Attacks Statistical Detection for Network Flooding Attacks C. S. Chao, Y. S. Chen, and A.C. Liu Det. of Information Engineering, Feng Chia Univ., Taiwan 407, OC. Email: cschao@fcu.edu.tw Abstract In order to meet

More information

A Symmetric FHE Scheme Based on Linear Algebra

A Symmetric FHE Scheme Based on Linear Algebra A Symmetric FHE Scheme Based on Linear Algebra Iti Sharma University College of Engineering, Comuter Science Deartment. itisharma.uce@gmail.com Abstract FHE is considered to be Holy Grail of cloud comuting.

More information

Macro #clojureconj

Macro #clojureconj Macro Club @stuartsierra #clojureconj 500 sq ft I ( ) If it seems simple, you're probably doing it wrong. You can pry EMACS from my cold, dead fingers. The First Rule of Macro Club You do not

More information

Collective Communication: Theory, Practice, and Experience. FLAME Working Note #22

Collective Communication: Theory, Practice, and Experience. FLAME Working Note #22 Collective Communication: Theory, Practice, and Exerience FLAME Working Note # Ernie Chan Marcel Heimlich Avi Purkayastha Robert van de Geijn Setember, 6 Abstract We discuss the design and high-erformance

More information

aclass: ClassDeclaration (name=name) aspectstatement: Statement (place=name) methods method: MethodDeclaration

aclass: ClassDeclaration (name=name) aspectstatement: Statement (place=name) methods method: MethodDeclaration Asect Weaving with Grah Rewriting Uwe A mann and Andreas Ludwig Institut f r Programmstrukturen und Datenorganisation Universit t Karlsruhe, RZ, Postfach 6980, 76128 Karlsruhe, Germany (assmannjludwig)@id.info.uni-karlsruhe.de

More information

Property Patterns for Runtime Monitoring of Web Service Conversations

Property Patterns for Runtime Monitoring of Web Service Conversations Proerty Patterns for Runtime Monitoring of Web Service Conversations Jocelyn Simmonds, Marsha Chechik, and Shiva Nejati University of Toronto, Toronto ON M5S3G4, Canada {jsimmond,chechik,shiva}@cs.toronto.edu

More information