Data replication is essential in scenarios like geo-distributed datacenters and edge computing. Yet, it poses a challenge for data consistency. Developers either adopt high consistency at the detriment of performance ...
详细信息
ISBN:
(纸本)9781450369923
Data replication is essential in scenarios like geo-distributed datacenters and edge computing. Yet, it poses a challenge for data consistency. Developers either adopt high consistency at the detriment of performance or they embrace low consistency and face a much higher programming complexity. We argue that language abstractions should support associating the level of consistency to data types. We present ConSysT, a programming language and middleware that provides abstractions to specify consistency types, enabling mixing different consistency levels in the same application. Such mechanism is fully integrated with object-orientedprogramming and type system guarantees that different levels can be mixed only in a correct way.
The proceedings contain 86 papers. The topics discussed include: shredder: learning noise distributions to protect inference privacy;DNNGuard: an elastic heterogeneous DNN accelerator architecture against adversarial ...
ISBN:
(纸本)9781450371025
The proceedings contain 86 papers. The topics discussed include: shredder: learning noise distributions to protect inference privacy;DNNGuard: an elastic heterogeneous DNN accelerator architecture against adversarial attacks;game of threads: enabling asynchronous poisoning attacks;reliable timekeeping for intermittent computing;forget failure: exploiting SRAM data remanence for low-overhead intermittent computation;time-sensitive intermittent computing meets legacy software;Lynx: a SmartNIC-driven accelerator-centric architecture for network servers;atomicity checking in linear time using vector clocks;FlexAmata: a universal and efficient adaption of applications to spatial automata processing accelerators;and accelerating legacy string kernels via bounded automata learning.
As several studies show, code that compares objects is a known source of bugs in object-oriented languages. One of the causes is that multiple methods handle comparison. Another cause is more insidious and has its roo...
详细信息
This article reviews and discusses various applications of object-orientedprogramming languages. A history in brief on development of object-oriented methods eventually leading to emergence of important soft programm...
详细信息
ISBN:
(纸本)9781665447874
This article reviews and discusses various applications of object-orientedprogramming languages. A history in brief on development of object-oriented methods eventually leading to emergence of important soft programming techniques is discussed. Emphasis mainly is given to differentiate some object-orientedprogramming languages such as; C++, Python and Java. The pros and cons of these programming languages are also highlighted in view of their futuristic developments and possible application areas.
Modern web applications have stringent latency requirements while processing an ever-increasing amount of user data. To address these challenges and improve programmer productivity, object Relational Mapping (ORM) fra...
详细信息
ISBN:
(纸本)9781450369923
Modern web applications have stringent latency requirements while processing an ever-increasing amount of user data. To address these challenges and improve programmer productivity, object Relational Mapping (ORM) frameworks have been developed to allow developers writing database processing code in an object-oriented manner. Despite such frameworks, prior work found that developers still struggle in developing ORM-based web applications. This paper presents a series of study and developed tools for optimizing web applications developed using the Ruby on Rails ORM. Using automated static analysis, we detect ORM related in-efficiency problems and suggests fixes to developers. Our evaluation on 12 real-world applications shows that more than 1000 performance issues can be detected and fixed.
Pattern matching, especially for complex patterns with many variations, is an important task in many big-data applications and maps well to finite automata. Recently, a variety of research has focused on hardware acce...
详细信息
ISBN:
(纸本)9781450371025
Pattern matching, especially for complex patterns with many variations, is an important task in many big-data applications and maps well to finite automata. Recently, a variety of research has focused on hardware acceleration of automata processing, especially via spatial architectures that directly map the patterns to massively parallel hardware elements, such as in FPGAs and in-memory solutions. We observed that all existing automata-acceleration architectures are designed based on fixed, 8-bit symbol processing, derived from ASCII processing. However, the alphabet size in pattern-matching applications varies from just a few up to billions of unique symbols. This makes it difficult to provide a universal and efficient mapping of this wide variety of automata applications to existing automata accelerators. In this paper, we present FlexAmata, a compiler solution for efficient adaption of applications with any alphabet size to existing pattern-matching accelerators. We demonstrate that this can increase automata processing efficiency in two ways. First, this improves resource utilization for applications with small alphabets and enables hardware acceleration for applications with very large alphabets (which otherwise would not map to hardware accelerators). Second, this enables the exploration of optimized bitwidth processing for future spatial hardware accelerators. We leverage FlexAmata and investigate the hardware implications of different bitwidth processing rates on the two state-of-the-art spatial accelerators, Cache Automaton (CA) and FPGAs. Our exploration across a wide range of automata benchmarks reveals that 4-bit processing rate on CA and 16-bit processing rate on FPGAs results in higher performance than the default 8-bit processing rate in these existing approaches.
Functional programming languages are well-suited for developing compilers, and compilers for functional languages are often themselves written in a functional language. Functional abstractions, such as monads, allow a...
详细信息
ISBN:
(纸本)9781450369817
Functional programming languages are well-suited for developing compilers, and compilers for functional languages are often themselves written in a functional language. Functional abstractions, such as monads, allow abstracting away some of the repetitive structure of a compiler, removing boilerplate code and making extensions simpler. Even so, functional languages are rarely used to implement compilers for languages of other paradigms. This paper reports on the experience of a four-year long project where we developed a compiler for a concurrent, object-oriented language using the functional language Haskell. The focus of the paper is the implementation of the type checker, but the design works well in static analysis tools, such as tracking uniqueness of variables to ensure data-race freedom. The paper starts from a simple type checker to which we add more complex features, such as type state, with minimal changes to the overall initial design.
The proceedings contain 22 papers. The topics discussed include: component-based computation-energy modeling for embedded systems;toward a benchmark repository for software maintenance tool evaluations with humans;NAB...
ISBN:
(纸本)9781450369923
The proceedings contain 22 papers. The topics discussed include: component-based computation-energy modeling for embedded systems;toward a benchmark repository for software maintenance tool evaluations with humans;NAB: automated large-scale multi-language dynamic program analysis in public code repositories;renaissance: a modern benchmark suite for parallel applications on the JVM;distributed object-orientedprogramming with multiple consistency levels in ConSysT;towards a WebAssembly standalone runtime on GraalVM;MetaDL: declarative program analysis for the masses;and towards language-parametric semantic editor services based on declarative type system specifications.
The proceedings contain 8 papers. The topics discussed include: from causality to stability: understanding and reducing meta-data in CRDTs;multi-language dynamic taint analysis in a polyglot virtual machine;efficient,...
ISBN:
(纸本)9781450388535
The proceedings contain 8 papers. The topics discussed include: from causality to stability: understanding and reducing meta-data in CRDTs;multi-language dynamic taint analysis in a polyglot virtual machine;efficient, near complete, and often sound hybrid dynamic data race prediction;efficient dispatch of multi-object polymorphic call sites in contextual role-orientedprogramming languages;SymJEx: symbolic execution on the GraalVM;transparent acceleration of java-based deep learning engines;you can’t hide you can’t run: a performance assessment of managed applications on a NUMA machine;and trcview: interactive architecture agnostic execution trace analysis.
暂无评论