English
Related papers

Related papers: To Pool or Not To Pool? Revisiting an Old Pattern

200 papers

Pooling-based recurrent neural architectures consistently outperform their counterparts without pooling. However, the reasons for their enhanced performance are largely unexamined. In this work, we examine three commonly used pooling…

Computation and Language · Computer Science 2020-10-29 Pratyush Maini , Keshav Kolluru , Danish Pruthi , Mausam

Pattern-Oriented Analysis and Design (POAD) is the practice of building complex software by applying proven designs to specific problem domains. Although a great deal of research and practice has been devoted to formalizing existing design…

Software Engineering · Computer Science 2008-02-27 Jerry Overton

Modern architectures require applications to make effective use of caches to achieve high performance and hide memory latency. This in turn requires careful consideration of placement of data in memory to exploit spatial locality, leverage…

Programming Languages · Computer Science 2019-01-24 Juliana Franco , Alexandros Tasos , Sophia Drossopoulou , Tobias Wrigstad , Susan Eisenbach

Java is the "go-to" programming language choice for developing scalable enterprise cloud applications. In such systems, even a few percent CPU time savings can offer a significant competitive advantage and cost saving. Although performance…

Performance · Computer Science 2021-04-09 Bolun Li , Pengfei Su , Milind Chabbi , Shuyin Jiao , Xu Liu

Points-to analysis is the problem of approximating run-time values of pointers statically or at compile-time. Points-to sets are used to store the approximated values of pointers during points-to analysis. Memory usage and running time…

Programming Languages · Computer Science 2015-03-19 Hamid A. Toussi , Ahmed Khademzadeh

The mathematical modeling of generics in Java and other similar nominally-typed object-oriented programming languages is a challenge. In this short paper we present the outline of a novel order-theoretic approach to modeling generics, in…

Programming Languages · Computer Science 2019-06-27 Moez A. AbdelGawad

An accepted practice to decrease applications' memory usage is to reduce the amount and frequency of memory allocations. Factors such as (a) the prevalence of out-of-memory (OOM) killers, (b) memory allocations in modern programming…

Software Engineering · Computer Science 2024-01-09 Gunnar Kudrjavets , Aditya Kumar , Jeff Thomas , Ayushi Rastogi

We define an abstract framework for object-oriented programming and show that object-oriented languages, such as C++, can be interpreted as parallel programming languages. Parallel C++ code is typically more than ten times shorter than the…

Programming Languages · Computer Science 2019-03-04 Edward Givelberg

Memory disaggregation has recently been adopted in data centers to improve resource utilization, motivated by cost and sustainability. Recent studies on large-scale HPC facilities have also highlighted memory underutilization. A promising…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-11-30 Jacob Wahlgren , Gabin Schieffer , Maya Gokhale , Ivy Peng

Computational interpretations of linear logic allow static control of memory resources: the data produced by the program are endowed through its type with attributes that determine its life cycle, and guarantee safe deallocation. The use of…

Programming Languages · Computer Science 2025-10-09 Hector Gramaglia

Developing large-scale distributed applications can be a daunting task. object-based environments have attempted to alleviate problems by providing distributed objects that look like local objects. We advocate that this approach has…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-07-30 Jan-Mark S. Wams , Maarten van Steen

Object-oriented programming is often regarded as too inefficient for high-performance computing (HPC), despite the fact that many important HPC problems have an inherent object structure. Our goal is to bring efficient, object-oriented…

Programming Languages · Computer Science 2019-08-19 Matthias Springer

Functional Programming has seen a resurgence in interest in the last few years and is often mentioned in opposition to Object-Orientated Programming. However, Object-Orientated Programming can actually absorb some of the lessons of…

Programming Languages · Computer Science 2021-04-02 Seamus Brady

Memory bloat is an important source of inefficiency in complex production software, especially in software written in managed languages such as Java. Prior approaches to this problem have focused on identifying objects that outlive their…

Programming Languages · Computer Science 2022-03-25 Bolun Li , Hao Xu , Qidong Zhao , Pengfei Su , Milind Chabbi , Shuyin Jiao , Xu Liu

Memory disaggregation addresses memory imbalance in a cluster by decoupling CPU and memory allocations of applications while also increasing the effective memory capacity for (memory-intensive) applications beyond the local memory limit…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-02-07 Anil Yelam

This article presents an empirical study of how the use of relational database access technologies in open source Java projects evolves over time. Our observations may be useful to project managers to make more informed decisions on which…

Software Engineering · Computer Science 2017-01-03 Alexandre Decan , Mathieu Goeminne , Tom Mens

In this work, we explore an object-based programming model for filling the space between shared memory and distributed systems programming. We argue that the natural representation for resources distributed across a memory network (e.g.…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-26 George Hodgkins , Mark Madler , Joseph Izraelevitz

We study general techniques for implementing distributed data structures on top of future many-core architectures with non cache-coherent or partially cache-coherent memory. With the goal of contributing towards what might become, in the…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-04-09 Panagiota Fatourou , Nikolaos D. Kallimanis , Eleni Kanellou , Odysseas Makridakis , Christi Symeonidou

Consider a collection of objects, some of which may be `bad', and a test which determines whether or not a given sub-collection contains no bad objects. The non-adaptive pooling (or group testing) problem involves identifying the bad…

Combinatorics · Mathematics 2016-09-06 David J. Balding , David C. Torney

Pattern-based, modular ontologies have several beneficial properties that lend themselves to FAIR data practices, especially as it pertains to Interoperability and Reusability. However, developing such ontologies has a high upfront cost,…

Artificial Intelligence · Computer Science 2019-04-12 Cogan Shimizu , Quinn Hirt , Pascal Hitzler