Sponsored Content
Full Discussion: Swap memory issue
Operating Systems Linux Swap memory issue Post 302892181 by Perderabo on Tuesday 11th of March 2014 10:32:40 AM
Old 03-11-2014
Quote:
Originally Posted by ratheeshjulk
Also with TOP command and sorted on Swap i got the below output
Code:
13554 db2inst1  18   0 5648m 473m 463m S  0.0  0.7  13:38.10 5.1g db2sysc
 1979 root      21   0 2880m 1.5g  30m S  0.0  2.4  28:39.52 1.3g java

The first two entries itself will add up above 6GB
The virtual addresses add up to about 6 GB. The resident memory is about 2 GB.

If a program allocates a 5 GB array its virtual address space utilization instantly increases by 5 GB because addresses must be assigned to all 5 GB. But the OS is not stupid enough to instantly dedicate 5GB of physical memory to that array. As the program actually uses the array the OS will allocate memory page by page.

And think about a program like vim. It's a huge program with many features but most of us don't use them all. As we use features in vim, if the code is already in core, fine. Otherwise a page fault is generated and a page is read in. vim page-faults just enough stuff into core to do what we want. The rest stays on disk.
This User Gave Thanks to Perderabo For This Post:
 

10 More Discussions You Might Find Interesting

1. Filesystems, Disks and Memory

Total Memory/Swap Memory

I need to put a program together to determine the total, available memory and total and available swap on unix machines. I have been searching for weeks and I seem to run into dead ends. Every unix platform I look at has a different way to determine memory info. Any sugggestions or new... (4 Replies)
Discussion started by: ghe1
4 Replies

2. Solaris

swap memory

Hi Can any help me on setting the swap memory ? I would like to set swap memory for installing oracle 9i software. RAM - 512 Mb HDD - 40 Gb OS - Sun Solaris 5.9 (6 Replies)
Discussion started by: sivaramat
6 Replies

3. Shell Programming and Scripting

Issue with insufficient swap or memory space

Hi, When I execute one of my shellscript I am getting the below mentioned error message .This application takes 2input files which have the records counts 26463 and 1178046 exec(2): insufficient swap or memory available. exec(2): insufficient swap or memory available. exec(2):... (2 Replies)
Discussion started by: kavithakuttyk
2 Replies

4. UNIX for Advanced & Expert Users

Issue with insufficient swap or memory space

Hi, When I execute one of my shellscript I am getting the below mentioned error message .This application takes 2input files which have the records counts 26463 and 1178046 exec(2): insufficient swap or memory available. exec(2): insufficient swap or memory available. exec(2): insufficient swap... (3 Replies)
Discussion started by: kavithakuttyk
3 Replies

5. UNIX for Dummies Questions & Answers

swap memory

Hi, I want to see used swap memory I know that for this there is command free -m but this shows Swap: 16383 4529 11854 by top command while load is 1.05 max CPU % 24 mysqld why used swap shows 4529 either it is not flushed there is other command... (2 Replies)
Discussion started by: kaushik02018
2 Replies

6. Solaris

No Space Left - Memory/Swap issue

:wall:I'm having a bit of a problem with Solaris 10u8 and one of our applications requesting memory and being told, "no space left". The break down: 24GB Physical Memory 8GB swap at the time of occurance, here's what a memory breakdown looks like: Page Summary Pages ... (21 Replies)
Discussion started by: aychbee45
21 Replies

7. UNIX for Dummies Questions & Answers

Threshold for swap memory

hi guys the monitoring team is using a tool for monitoring linux boxes and they set an alarm for swap memory to 10%(critical) I really has no idea when swap memory usage is high.... Can someone recommend me a threshold for this? when is warning or critical and this parameters can affect... (3 Replies)
Discussion started by: karlochacon
3 Replies

8. HP-UX

How much Swap memory do i have ?

here is the output of swapinfo command ==> swapinfo Kb Kb Kb PCT START/ Kb TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME dev 8192000 0 8184000 0% 0 - 1 /dev/vg00/swap reserve - 8184000 -8184000 memory ... (5 Replies)
Discussion started by: mohtashims
5 Replies

9. Red Hat

Swap memory

Hi team, Is there any ability to force the system to use the swap memory for a specific service? And prevent another service of using the swap memory? Thanks (2 Replies)
Discussion started by: leo_ultra_leo
2 Replies

10. Red Hat

SWAP memory

Admins, How can I configure the server so that it will utilize the swap file as little as possible? Please correct me if I'm wrong, I would say change the value of sysctl - vm.swappiness? And if, how can I keep it permenatly even after rebooting the system? since no related parameters in... (7 Replies)
Discussion started by: leo_ultra_leo
7 Replies
meminfo(2)							   System Calls 							meminfo(2)

NAME
meminfo - provide information about memory SYNOPSIS
#include <sys/types.h> #include <sys/mman.h> int meminfo(const uint64_t inaddr[], int addr_count, const uint_t info_req[], int info_count, uint64_t outdata[], uint_t validity[]); PARAMETERS
inaddr array of input addresses; the maximum number of addresses that can be processed for each call is MAX_MEMINFO_CNT addr_count number of addresses info_req array of types of information requested info_count number of pieces of information requested for each address in inaddr outdata array into which results are placed; array size must be the product of info_count and addr_count validity array of size addr_count containing bitwise result codes; 0th bit evaluates validity of corresponding input address, 1st bit validity of response to first member of info_req, and so on DESCRIPTION
The meminfo() function provides information about virtual and physical memory particular to the calling process. The user or developer of performance utilities can use this information to analyze system memory allocations and develop a better understanding of the factors affecting application performance. The caller of meminfo() can obtain the following types of information about both virtual and physical memory. MEMINFO_VPHYSICAL physical address corresponding to virtual address MEMINFO_VLGRP locality group of physical page corresponding to virtual address MEMINFO_VPAGESIZE size of physical page corresponding to virtual address MEMINFO_VREPLCNT number of replicated physical pages corresponding to specified virtual address MEMINFO_VREPL | n nth physical replica of specified virtual address MEMINFO_VREPL_LGRP | n lgrp of nth physical replica of specified virtual address MEMINFO_PLGRP locality group of specified physical address RETURN VALUES
Upon successful completion meminfo() returns 0. Otherwise -1 is returned and errno is set to indicate the error. ERRORS
The meminfo() function will fail if: EFAULT The area pointed to by outdata or validity could not be written, or the data pointed to by info_req or inaddr could not be read. EINVAL The value of info_count is greater than 31 or less than 1, or the value of addr_count is less than 1. EXAMPLES
Example 1: Print physical pages and page sizes corresponding to a set of virtual addresses. The following example prints the physical pages and page sizes corresponding to a set of virtual addresses. void print_info(void **addrvec, int how_many) { static const uint_t info[] = { MEMINFO_VPHYSICAL, MEMINFO_VPAGESIZE }; int info_num = sizeof (info) / sizeof (info[0]); int i; uint64_t *inaddr = alloca(sizeof (uint64_t) * how_many); uint64_t *outdata = alloca(sizeof (uint64_t) * how_many * info_num); uint_t *validity = alloca(sizeof (uint_t) * how_many); for (i = 0; i < how_many; i++) inaddr[i] = (uint64_t)addrvec[i]; if (meminfo(inaddr, how_many, info, info_num, outdata, validity) < 0) { perror("meminfo"); return; } for (i = 0; i < how_many; i++) { if ((validity[i] & 1) == 0) printf("address 0x%llx not part of address space ", inaddr[i]); else if ((validity[i] & 2) == 0) printf("address 0x%llx has no physical page " "associated with it ", inaddr[i]); else { char buff[80]; if ((validity[i] & 4) == 0) strcpy(buff, "<Unknown>"); else sprintf(buff, "%lld", outdata[i * info_num + 1]); printf("address 0x%llx is backed by physical " "page 0x%llx of size %s ", inaddr[i], outdata[i * info_num], buff); } } } ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Stable | +-----------------------------+-----------------------------+ |MT-Level |Async-Signal-Safe | +-----------------------------+-----------------------------+ SEE ALSO
memcntl(2), mmap(2), gethomelgroup(3C), getpagesize(3C), madvise(3C), sysconf(3C), attributes(5) SunOS 5.10 21 Feb 2003 meminfo(2)
All times are GMT -4. The time now is 09:18 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy