Subject Divisions (default selections) |
(These links to detailed subjects under this one retain your personalized selections.)
Allocated memory debugging - Methods of debugging and tracing allocations of memory, detecting leaks, overruns, corruption, etc.
- #Overviews and other related subjects# - related, but not under or including this subject directly.
RSIM: Simulating Shared-Memory Multiprocessors with ILP Processors ( Christopher J. Hughes, Vijay S. Pai, Parthasarathy Ranganathan, Sarita V. Adve ; IEEE Computer Magazine 2002-02)
- - The early 1990s saw several announcements of commercial shared-memory systems using processors that aggressively exploited instruction-level parallelism (ILP), including the MIPS R10000, Hewlett-Packard PA8000, and Intel Pentium Pro. These processors could potentially reduce memory read stalls by over-lapping read latency with other operations, possibly changing the nature of performance bottlenecks in the system. The authors' experience with Rsim demonstrates that modeling ILP features is important even in shared-memory multiprocessor systems. In particular, current simple processor-based approximations cannot model significant performance effects for applications exhibiting parallel read misses. Further, recent shared-memory designs such as aggressive implementations of sequential consistency use the aggressive ILP-enhancing features of modern processors that simple processor-based simulators do not model. As microprocessor systems become more complex, the availability of shared infrastructure source code is likely to become increasingly crucial. The authors plan to release a new Rsim version shortly that will include instruction caches, TLBs, multimedia extensions, simultaneous multithreading, Rabbit fast simulation mode, and ports to Linux platforms.
Cache-Only Memory Architectures ( Fredrik Dahlgren, Josep Torrellas ; IEEE Computer Magazine 1999-06)
- - COMA reduces the impact of frequent long-latency memory accesses by automatically replicating and migrating data across memory modules.
Smarter Memory: Improving Bandwidth for Streamed References ( Sally A. McKee, Robert H. Klenke, Kenneth L. Wright, William A. Wulf, Maximo H. Salinas, James H. Aylor, Alan P. Batson ; IEEE Computer Magazine 1998-07)
- - Processor speeds are increasing so much faster than memory speeds that within a decade processors may spend most of their time waiting for data. Most modern DRAM components support modes that make it possible to perform some access sequences more quickly than others. The authors describe how reordering streams can result in better memory performance.
Virtual Memory: Issues of Implementation ( Bruce Jacob, Trevor Mudge ; IEEE Computer Magazine 1998-06)
- - The authors introduce basic virtual-memory technologies and then compare memory-management designs in three commercial microarchitectures. They show the diversity of virtual-memory support and, by implication, how this diversity can complicate and compromise system operations.
A Cache Visualization Tool ( Eric van der Deijl, Gerco Kanbier, Olivier Temam, Elena D. Granston ; IEEE Computer Magazine 1997-07)
- - Improved cache performance is crucial to improved code performance. By visualizing cache behavior as the program is simulated, this memory analysis tool dynamically represents cache phenomena. The results can guide developers in making better software and hardware optimizations.
When Caches Aren't Enough: Data Prefetching Techniques ( Steven P. VanderWiel, David J. Lilja ; IEEE Computer Magazine 1997-07)
- - With data prefetching, memory systems call data into the cache before the processor needs it, thereby reducing memory-access latency. Using the most suitable techniques is critical to maximizing data prefetching's effectiveness.
Associative processing and processors ( Anargyros Krikelis, Charles C. Weems ; IEEE Computer Magazine 1994-11)
- - Associative memory concerns the concept that one idea may trigger the recall of a different but related idea. Traditional computers, however, rely upon a memory design that stores and retrieves data by its address rather than its content. In such a search, every accessed data word must travel individually between the processing unit and the memory. The simplicity of this retrieval-by-address approach has ensured its success, but has also produced some inherent disadvantages. One is the von Neumann bottleneck, where the memory-access path becomes the limiting factor for system performance. A related disadvantage is the inability to proportionally increase the size of a unit transfer between the memory and the processor as the size of the memory scales up. Associative memory, in contrast, provides a naturally parallel and scalable form of data retrieval for both structured data (e.g. sets, arrays, tables, trees and graphs) and unstructured data (raw text and digitized signals). An associative memory can be easily extended to process the retrieved data in place, thus becoming an associative processor. This extension is merely the capability for writing a value in parallel into selected cells.
Cache Profiling and the SPEC Benchmarks: A Case Study ( Alvin R. Lebeck, David A. Wood ; IEEE Computer Magazine 1994-010)
- - A vital tool-box component, the CProf cache profiling system lets programmers identify hot spots by providing cache performance information at the source-line and data-structure level. Our purpose is to introduce a broad audience to cache performance profiling and tuning techniques. Although used sporadically in the supercomputer and multiprocessor communities, these techniques also have broad applicability to programs running on fast uniprocessor workstations. We show that cache profiling, using our CProf cache profiling system, improves program performance by focusing a programmer's attention on problematic code sections and providing insight into appropriate program transformations.
Constrained-Latency Storage Access ( Richard Staehli, Jonathan Walpole ; IEEE Computer Magazine 1993-03)
- - A class of constrained-latency storage access (CLSA) applications that require both large amounts of storage and guarantees for short latencies are presented. A range of existing approaches to meeting the requirements of CLSA applications is surveyed. Their limitations indicate that the technology does not yet exist to support complex CLSA applications on general-purpose storage architectures. A variety of good solutions exists for meeting throughput and latency requirements for continuous media data, including dedication of resources, presequencing, and greedy prefetching. However, none of the current approaches supports the automatic anticipation of scripted data access as required for interactive editing and playback of video segments.
A Design and Yield Evaluation Technique for Wafer-Scale Memory ( Koichi Yamashita, Shohei Ikehara ; IEEE Computer Magazine 1992-04)
- - Wafer-scale memory provides greater yet cheaper storage volume than conventional memory systems using discrete chips. A simulator using a Monte Carlo technique to evaluate the defect tolerance scheme for a wafer-scale memory and predict the harvested capacity of the wafer memory is described. The design of a wafer-scale random-access memory that uses switching-register network logic is presented. A simulator that selects the optimal defect tolerance scheme for the wafer-scale memory is discussed.
Error-Control Coding in Computers ( Eiji Fujiwara, Dhiraj K. Pradhan ; IEEE Computer Magazine 1990-07)
- - In this article, intended for readers with basic knowledge in coding, the codes used in actual systems are surveyed. Error control in high-speed memories is examined, including bit-error-correcting/detecting codes, byte-error-correcting/detecting codes, and codes to detect single-byte errors as well as correct single-bit errors and detect double-bit errors. Tape and disk memory codes for error control in mass memories are discussed. Processor error control and unidirectional error-control codes are covered, including the application of the latter to masking asymmetric line faults.
Directory-Based Cache Coherence in Large-Scale Multiprocessors ( David Chaiken, Craig Fields, Kiyoshi Kurihara, Anant Agarwal ; IEEE Computer Magazine 1990-06)
- - The usefulness of shared-data caches in large-scale multiprocessors, the relative merits of different coherence schemes, and system-level methods for improving directory efficiency are addressed. The research presented is part of an effort to build a high-performance, large-scale multiprocessor. The various classes of cache directory schemes are described, and a method of measuring cache coherence is presented. The various directory schemes are analyzed, and ways of improving the performance of directories are considered. It is found that the best solutions to the cache-coherence problem result from a synergy between a multiprocessor's software and hardware components.
Content-Addressable and Associative Memory: Alternatives to the Ubiquitous RAM ( Lawrence Chisvin, R. James Duckworth ; IEEE Computer Magazine 1989-07)
- - Content-addressable and associative processing systems are explained, and it is shown that such systems are commercially feasible. Content-based archiving and retrieving are compared with address-based storage methods. The principles, advantages and obstacles of content-addressable storage are examined and associative processing methods and architectures are described. Software for associative systems is also discussed.
A Case for Direct-Mapped Caches ( Mark D. Hill ; IEEE Computer Magazine 1988-12)
- - Direct-mapped caches are defined, and it is shown that trends toward larger cache sizes and faster hit times favor their use. The arguments are restricted initially to single-level caches in uniprocessors. They are then extended to two-level cache hierarchies. How and when these arguments for caches in uniprocessors apply to caches in multiprocessors are also discussed.
What does "Segmentation violation'' mean? []
- At comp.lang.c FAQ
How can I track down these pesky malloc problems? []
- At comp.lang.c FAQ
How can I find out how much memory is available? []
- At comp.lang.c FAQ
How can I allocate arrays or structures bigger than 64K? []
- At comp.lang.c FAQ
What does the error message "DGROUP exceeds 64K'' mean? []
- At comp.lang.c FAQ
How can I access memory located at a certain address? []
- At comp.lang.c FAQ
Unix Programming FAQ How do I find out about a process' memory usage? []
- At Unix Programming FAQ
Unix Programming FAQ Why do processes never decrease in size? []
- At Unix Programming FAQ
Unix Programming FAQ How can I tell how much memory my system has? []
- At Unix Programming FAQ
To ECC Or Not To ECC? [2002/04/26]
- At Ask Slashdot
Swap Performance in Linux [2002/03/12]
- At Ask Slashdot
Software Patents on Memory Allocators? [2001/12/13]
- At Ask Slashdot
How Reliable are USB Memory Keys? [2001/11/26]
- At Ask Slashdot
How do Software MMU's Work? [ 1999/05/13]
- At Ask Slashdot
Cache and RAM Limitations [ 1998/11/10]
- At Ask Slashdot
What the heck is "DGROUP > 64K"? []
- At comp.os.msdos.programmer FAQ at MIT
- http://www.faqs.org/faqs/msdos-programmer-faq/part2 (At comp.os.msdos.programmer FAQ at faqs.org)
How do I fix "automatic data segment exceeds 64K" or "stack plus data exceed 64K"? []
- At comp.os.msdos.programmer FAQ at MIT
- http://www.faqs.org/faqs/msdos-programmer-faq/part2 (At comp.os.msdos.programmer FAQ at faqs.org)
What does this message mean: "A20 already enabled so test is meaning less?" []
- At comp.os.msdos.programmer FAQ at MIT
- http://www.faqs.org/faqs/msdos-programmer-faq/part2 (At comp.os.msdos.programmer FAQ at faqs.org)
How can I access a specific address in the PC's memory? []
- At comp.os.msdos.programmer FAQ at MIT
- http://www.faqs.org/faqs/msdos-programmer-faq/part4 (At comp.os.msdos.programmer FAQ at faqs.org)
How can I read or write my PC's CMOS memory? []
- At comp.os.msdos.programmer FAQ at MIT
- http://www.faqs.org/faqs/msdos-programmer-faq/part4 (At comp.os.msdos.programmer FAQ at faqs.org)
How can I access memory beyond 640K? []
- At comp.os.msdos.programmer FAQ at MIT
- http://www.faqs.org/faqs/msdos-programmer-faq/part4 (At comp.os.msdos.programmer FAQ at faqs.org)
How can I use the protected mode? []
- At comp.os.msdos.programmer FAQ at MIT
- http://www.faqs.org/faqs/msdos-programmer-faq/part4 (At comp.os.msdos.programmer FAQ at faqs.org)
Questions and Answers
- Others not displayed here
- Full List
py22-vmaps-1.1 - Python Arrays on mmap()
- At FreeBSD Ports
shmap-0.3_1 - Shared-memory-based hashmaps
- At FreeBSD Ports
asmem-1.8 - An AfterStep look-n-feel memory utilization monitor
- At FreeBSD Ports
memtest-2.93.1 - Utility to test for faulty memory subsystem
- At FreeBSD Ports
- memtest-2.5 - thorough, stand alone memory test for x86 arch (At NetBSD packages collection)
muse-0.1 - Shows memory usage data
- At FreeBSD Ports
ruby-mmap-0.1.7 - Ruby interface to manage memory-mapped file objects
- At FreeBSD Ports
mob-0.1.0_1 - Memory Organization Benchmarks
- At FreeBSD Ports
stream-1.0 - Synthetic benchmark program that measures sustainable memory bandwidth
- At FreeBSD Ports
p5-IPC-ShareLite-0.08 - A simple interface to access shared memory
- At FreeBSD Ports
p5-IPC-Cache-0.02 - persist data across processes via shared memory
- At FreeBSD Ports
runtime - Runtime memory allocation for multi-dimensional arrays {oss}
- At comp.sources.unix at UUNET
malloc.mk - Missing makefile for "malloc" posting {oss}
- At comp.sources.unix at UUNET
malloc.patch - Bug fix for "smarter malloc" {oss}
- At comp.sources.unix at UUNET
c-gc - C memory garbage collector {oss}
- At comp.sources.unix at UUNET
malloc-1.2.0 - debugging version of malloc, V1.2.0 {oss}
- At comp.sources.unix at UUNET
- malloc - A "smarter" malloc (At comp.sources.unix at UUNET)
mmap-2.2.3 - A SVR3.2 Memory Mapped I/O Driver v2.2.3, {oss}
- At comp.sources.unix at UUNET
sharedmem - Shared memory emulation for 4.2BSD {oss}
- At comp.sources.unix at UUNET
Tiger Woods PGA Tour Golf
RAM Doubler 9.0
MemTurbo Deluxe
RAM Doubler 9.0
FreeMem Professional 4.3
alloca (3) - memory allocator {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
malloc free realloc calloc alloca (3) - general memory allocation operations {oss}
- Source code: OpenBSD FreeBSD
- [ANSI C X3.159-1989]
calloc (3) - allocate clean memory (zero initialized space) {oss}
- Man pages: RedHat NetBSD
- Source code: OpenBSD
- [ANSI C X3.159-1989]
malloc free cfree realloc (3) - general memory allocation functions {oss}
- Man pages: FreeBSD Solaris NetBSD
- Source code: OpenBSD FreeBSD
- [ANSI C X3.159-1989]
valloc (3) - aligned memory allocation function {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
bcmp bcopy bzero memccpy memchr memcmp memcpy memmove memset (3) - byte string operations {oss}
- Source code: OpenBSD FreeBSD
- [ANSI C X3.159-1989]
bcmp (3) - compare byte string {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
bcopy (3) - copy byte string {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
bzero (3) - write zeroes to a byte string {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
memcpy (3) - copy byte string {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
- [ANSI C X3.159-1989]
memccpy (3) - copy string until character found {oss}
- Man pages: FreeBSD RedHat
- Source code: OpenBSD FreeBSD
memchr (3) - locate byte in byte string {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
- [ANSI C X3.159-1989]
memcmp (3) - compare byte string {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
- [ANSI C X3.159-1989]
memmove (3) - copy byte string {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
- [ANSI C X3.159-1989]
memset (3) - write a byte to byte string {oss}
- Man pages: FreeBSD RedHat NetBSD
- Source code: OpenBSD FreeBSD
- [ANSI C X3.159-1989]
getpagesize (3) - get system page size {oss}
- Man pages: FreeBSD Solaris NetBSD
- Source code: OpenBSD FreeBSD
mmap (2) - map files or devices into memory {oss}
- Man pages: FreeBSD RedHat Solaris NetBSD
mprotect (2) - control the protection of pages {oss}
- Man pages: FreeBSD RedHat Solaris NetBSD
msync (2) - synchronize a mapped region {oss}
- Man pages: FreeBSD RedHat NetBSD
munmap (2) - remove a mapping {oss}
- Man pages: FreeBSD Solaris NetBSD
shmat shmdt (2) - map/unmap shared memory {oss}
- Man pages: FreeBSD NetBSD
shmctl (2) - shared memory control operations {oss}
- Man pages: FreeBSD RedHat Solaris NetBSD
shmget (2) - get shared memory area identifier {oss}
- Man pages: FreeBSD RedHat Solaris NetBSD
madvise (2) - give advice about use of memory {oss}
- Man pages: FreeBSD NetBSD
mincore (2) - determine residency of memory pages {oss}
- Man pages: FreeBSD Solaris NetBSD
minherit (2) - control the inheritance of pages {oss}
- Man pages: FreeBSD NetBSD
mlock munlock (2) - lock (unlock) physical pages in memory {oss}
- Man pages: FreeBSD RedHat NetBSD
i386_get_ldt i386_set_ldt (2) - manage i386 per-process Local Descriptor Table entries {oss}
- Man pages: FreeBSD NetBSD
i386_vm86 (2) - set virtual 8086 processor registers and mode {oss}
- Man pages: FreeBSD NetBSD
kvm (3) - kernel memory interface {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
kvm_open kvm_openfiles kvm_close (3) - initialize kernel virtual memory access {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
kvm_getprocs kvm_getargv kvm_getenvv (3) - access user process state {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
kvm_geterr verr errx verrx warn vwarn warnx vwarnx (3) - get error message on kvm descriptor {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
kvm_getfiles (3) - survey open files {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
kvm_getloadavg (3) - get load average of the system {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
kvm_nlist (3) - retrieve symbol table names from a kernel image {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
kvm_read kvm_write (3) - read or write kernel virtual memory {oss}
- Man pages: FreeBSD NetBSD
- Source code: OpenBSD FreeBSD
p5-IPC-SharedCache-1.3 - Perl module for managing a SysV IPC shared memory cache
- At FreeBSD Ports
rvm-1.6 - A persistent VM library
- At FreeBSD Ports
- rvm-1.3 - Recoverable Virtual Memory (At NetBSD packages collection)
dlmalloc-2.6.5 - Small, fast malloc library by Doug Lea
- At FreeBSD Ports
mprof-3.0 - Memory Profiler and Leak Detector.
- At FreeBSD Ports
boehm-gc-6.0 - Garbage collection and memory leak detection for C and C++
- At FreeBSD Ports
- boehm-gc-4.12.tgz (At OpenBSD 2.7_packages i386)
boehm-gc-4.12.tgz (At OpenBSD 2.8_packages i386)
boehm-gc-4.12.tgz (At OpenBSD 2.7_packages sparc)
boehm-gc-4.12.tgz (At OpenBSD 2.8_packages m68k)
boehm-gc-4.12.tgz (At OpenBSD 2.8_packages sparc)
boehm-gc-5.3 (At NetBSD packages collection)
electricfence-2.2.2 - Debugging malloc() that uses the VM hardware to detect buffer overruns
- At FreeBSD Ports
- electricfence-2.0.5.tgz - library providing malloc debugging via VM protection (At OpenBSD 2.7_packages i386)
electricfence-2.0.5.tgz - library providing malloc debugging via VM protection (At OpenBSD 2.8_packages i386)
electricfence-2.0.5.tgz - library providing malloc debugging via VM protection (At OpenBSD 2.7_packages sparc)
electricfence-2.0.5.tgz - library providing malloc debugging via VM protection (At OpenBSD 2.8_packages m68k)
electricfence-2.0.5.tgz - library providing malloc debugging via VM protection (At OpenBSD 2.8_packages sparc)
ElectricFence-2.0.5 - Different kind of malloc() debugger (At NetBSD packages collection)
libmalloc-1.18 - Small, fast malloc library with comprehensive error checking
- At FreeBSD Ports
Memmem.C - Like strstr(), but for non-text buffers {oss}
- At snippets.org
Mk_Fp.H - Makes sure the Intel MK_FP() macro is defined {oss,msdos}
- At snippets.org
Fmemops.H.Fmemops.C - Emulate MSC's _fmemxxx() in Power C, ZTC++, and older TC++ {oss,msdos}
- At snippets.org
Getseg.H - Get segment and offset of any object {oss,msdos}
- At snippets.org
Fptr_Add.C - Add any value to a far pointer and normalize far pointers {oss,msdos}
- At snippets.org
Xms.H, Xms.C, Xmstest.C, Ems.H, Ems.C, Emstest.C - Cliff Rhodes' EMS and XMS support functions {oss,msdos}
- At snippets.org
Mmodels.Faq - Information on DOS real mode memory models {oss}
- At snippets.org
Big_Mall.H - Portably allocate memory > 64Kb {oss}
- At snippets.org
Memrev.H,Memrev.C - Assymetrical memory swap {oss}
- At snippets.org
Fmemmem.C - Like memmem() above, but for large DOS buffers {oss}
- At snippets.org
Multi-dimensional array functions {oss}
- At snippets.org
Snparray.H - Header for multi-dimentional array functions {oss}
- At snippets.org
Amalloc.C - Multi-dimensional array allocation (limited to <64K on PC) {oss}
- At snippets.org
Mdalloc.C - Multi-dimentional array allocte and free (any size) {oss}
- At snippets.org
Mdasort.C - Test program demonstrating array sorting {oss}
- At snippets.org
Memavail.C - Report available DOS memory {oss}
- At snippets.org
c-gc - C memory garbage collector {oss}
- At comp.sources.unix at ISC
c-gc - C memory garbage collector {oss}
- At comp.sources.unix at ISC
malloc - A "smarter" malloc {oss}
- At comp.sources.unix at ISC
mmap - A SVR3.2 Memory Mapped I/O Driver v2.2.3 {oss}
- At comp.sources.unix at ISC
sharedmem - Shared memory emulation for 4.2BSD {oss}
- At comp.sources.unix at ISC
Gmemusage - Graphical memory usage viewer. {unknown}
Libraries and Functions
- Others not displayed here
- Full List
Related Subjects (default selections) |
Subject classifications directly under this one are #here#.
(The following links to subjects at this site retain your personalized selections.)
Data structures (In memory) - Data structures in memory. Queues, lists, graphs, trees, etc.
Up to Execution
- (There may be additional related subject pages listed
here)
-
Computers : Programming : Memory Management :
-