1,134 research outputs found
Asynchronous processing of Coq documents: from the kernel up to the user interface
The work described in this paper improves the reactivity of the Coq system by
completely redesigning the way it processes a formal document. By subdividing
such work into independent tasks the system can give precedence to the ones of
immediate interest for the user and postpones the others. On the user side, a
modern interface based on the PIDE middleware aggregates and present in a
consistent way the output of the prover. Finally postponed tasks are processed
exploiting modern, parallel, hardware to offer better scalability.Comment: in Proceedings of ITP, Aug 2015, Nanjing, Chin
Thermion: Verification of a thermionic heat pipe in microgravity
The Idaho National Engineering Laboratory (INEL) is conducting intensive research in the design and development of a small excore heat-pipe-thermionic space nuclear reactor power system (SEHPTR). The SEHPTR spacecraft will be able to supply 40 kW of power in any given orbit. The key components in this reactor are the thermionic heat pipes. The heat pipes have two major functions: (1) to convert heat energy into electrical energy, and (2) to radiate the excess heat to space. Thermionic power conversion is the process of converting heat energy into electrical energy with no moving parts. Heat is applied to the cathode surface. This heat will boil off electrons that will jump across the gap to the cooler surface of the anode, which will cause a potential difference between the two plates and induce a current through the load. Thermionic power conversion is incorporated as part of the heat pipe. The heat pipe, which is being developed by Thermacore Inc., is actually two heat pipes. It uses a radial heat pipe, called the emitter, and an axial heat pipe collector. The emitter heat pipe will pass the heat from the nuclear core to the cathode surface. The collector heat pipe keeps the anode surface cooler by transferring the heat from the anode surface and radiating it to space
Towards co-designed optimizations in parallel frameworks: A MapReduce case study
The explosion of Big Data was followed by the proliferation of numerous
complex parallel software stacks whose aim is to tackle the challenges of data
deluge. A drawback of a such multi-layered hierarchical deployment is the
inability to maintain and delegate vital semantic information between layers in
the stack. Software abstractions increase the semantic distance between an
application and its generated code. However, parallel software frameworks
contain inherent semantic information that general purpose compilers are not
designed to exploit.
This paper presents a case study demonstrating how the specific semantic
information of the MapReduce paradigm can be exploited on multicore
architectures. MR4J has been implemented in Java and evaluated against
hand-optimized C and C++ equivalents. The initial observed results led to the
design of a semantically aware optimizer that runs automatically without
requiring modification to application code.
The optimizer is able to speedup the execution time of MR4J by up to 2.0x.
The introduced optimization not only improves the performance of the generated
code, during the map phase, but also reduces the pressure on the garbage
collector. This demonstrates how semantic information can be harnessed without
sacrificing sound software engineering practices when using parallel software
frameworks.Comment: 8 page
Prioritized Garbage Collection: Explicit GC Support for Software Caches
Programmers routinely trade space for time to increase performance, often in
the form of caching or memoization. In managed languages like Java or
JavaScript, however, this space-time tradeoff is complex. Using more space
translates into higher garbage collection costs, especially at the limit of
available memory. Existing runtime systems provide limited support for
space-sensitive algorithms, forcing programmers into difficult and often
brittle choices about provisioning.
This paper presents prioritized garbage collection, a cooperative programming
language and runtime solution to this problem. Prioritized GC provides an
interface similar to soft references, called priority references, which
identify objects that the collector can reclaim eagerly if necessary. The key
difference is an API for defining the policy that governs when priority
references are cleared and in what order. Application code specifies a priority
value for each reference and a target memory bound. The collector reclaims
references, lowest priority first, until the total memory footprint of the
cache fits within the bound. We use this API to implement a space-aware
least-recently-used (LRU) cache, called a Sache, that is a drop-in replacement
for existing caches, such as Google's Guava library. The garbage collector
automatically grows and shrinks the Sache in response to available memory and
workload with minimal provisioning information from the programmer. Using a
Sache, it is almost impossible for an application to experience a memory leak,
memory pressure, or an out-of-memory crash caused by software caching.Comment: to appear in OOPSLA 201
Garbage Collection for Java Distributed Objects
We present a distributed garbage collection algorithm for Java distributed objects using the object model provided by the Java Support for Distributed Objects (JSDA) object model and using weak references in Java. The algorithm can also be used for any other Java based distributed object models that use the stub-skeleton paradigm. Furthermore, the solution could also be applied to any language that supports weak references as a mean of interaction with the local garbage collector. We also give a formal definition and a proof of correctness for the proposed algorithm
Processing of Aqueous Graphite–Silicon Oxide Slurries and Its Impact on Rheology, Coating Behavior, Microstructure, and Cell Performance
The mixing process is the basis of the electrode microstructure, which defines key cell performance indicators. This work investigated the effects of varying the energy input within the mixing procedure on slurry rheology, coating behavior, mechanical and electrical properties of dry electrodes and electrochemical performance of cells fabricated from these negative electrodes. Energy input differences were achieved by varying the solids content within the mixing procedure; however, the final total solids content of the slurries was always the same. The slurries, produced with graphite and silicon oxide as active materials and carboxymethylcellulose (CMC) and styrene-butadiene rubber as binders, showed large differences in flow behavior which were explained by changes in CMC adsorption and mechanical degradation because of increasing energy input. Low shear viscosity and the degree of shear thinning decreased with increasing energy input, resulting in a narrower stability window for slot-die coating. The resistance between the electrode and current collector decreased as more CMC was adsorbed on the active material. Electrode adhesion drastically dropped at the highest energy input, presumably due to a change in SBR distribution. Despite these variations, all fabricated pouch cells demonstrated excellent electrochemical performance and a slight trend of increased charge capability was observed in cells prepared with higher energy input
Potentials and Implementation Strategies For Flexible Battery Cell Production
The effects of a fossil fuel-based economy are becoming increasingly apparent. The storage and use of renewable energy sources are a key strategy to reduce overall greenhouse gas emissions. In this context, the demand for batteries as a suitable medium for energy storage is increasing rapidly. Lithium-ion batteries pioneered in consumer electronics are nowadays used in ever more applications, with the e-mobility sector being one of the most prominent. From a production perspective, the process chain for manufacturing of such lithium-ion batteries can be divided into three main sections: electrode production, cell assembly and cell finishing. However, actual implementation of the process chain differs substantially, depending on the selected cell format (pouch, cylindric, prismatic) and design, manifesting in cell-specific processes (e.g. stacking vs. winding), supplementary and/or omitted process steps and manufacturing technologies (e.g. pouch foil heat sealing vs. hard case laser welding). Currently there is no strictly preferred cell format, as each format has its advantages and disadvantages, depending on its intended application and system integration. Production of different battery cell types thus is spread across various international mostly Asian manufacturers, most of which have large scale mass production lines dedicated to a single specific format. Only a few manufacturers have a portfolio of formats (e.g. round and prismatic) in large quantities. Against this background, the following paper provides an overview of the product variety of lithium-ion batteries available on the market, following up with a discussion of potentials and implementation strategies for flexible battery cell production. First, applications and business areas for lithium-ion batteries are analysed and general flexibility areas regarding the battery cell design are derived. Subsequently, the impacts of the different flexibility areas on the production processes are analysed. In a final step, different implementation strategies and approaches for increased flexibility in battery cell production are elaborated
- …