From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christos Margiolas Subject: Questions about the numa support implementation of Linux Date: Sun, 22 Nov 2009 04:07:27 +0200 Message-ID: Mime-Version: 1.0 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:received:date:message-id:subject :from:to:content-type:content-transfer-encoding; bh=wLTdfYXE3IxWunBezLOL9t2i2onVlk4WG21y6guSyCI=; b=NasypwfAYKbzBlTDaRdS4vE/hHjJvF5UFwhK3/oujStNtiytFkNY6CRvSka0cVNB1F +iUZYqUIbUuNoZahvwPP70Nl0+Iq/5mhF0frQRQejfd9FZjISJlPUP+R8J3u6kiz/02y 4uK1z66QB3LSvRzUSBgVCSAG+hByuTDvC3QL0= Sender: linux-numa-owner@vger.kernel.org List-ID: Content-Type: text/plain; charset="iso-8859-1" To: linux-numa@vger.kernel.org Hello, =46ew weeks now, I'm working on a map reduce implementation for numa systems(cell be and amd64 arch) and I have searched the web and irc channels for information about numa support on Linux. I study about the libnuma v2.1 library and I wrote some test programs and I understood enough good the library api. But I still have enough questions and I think they're kernel support relative. I will try indite my questions as simple as possible in order to save your time. I know that the operating system(Linux) is =A0running on a single node and it's not distributed over the nodes. a)When a process or a process's thread is executing on a node(not the same with the kernel), the local memory(execution node of process or thread) has a copy of the text and data segments or there are always references to the memory of the node with the os where the data and text segments would legacy be? If the final is true, this is a big bottleneck. b)Memory allocation system calls which is used by standard c library api (malloc, calloc, realloc) are aware about numa policy on memory systems? Or only with the libnuma calls is possible to allocate memory effectively with respect on numa bind restrictions? c)If a strict memory =A0policy was specified, which designates specific nodes, and the nodes =A0are out of memory resources, the system will kill the process or it will will use the swap as it does for a normal uniform memory system? Now a question relative with scheduler conduct: d)When a processor binding function(scheduler or numa api call) returns the schedulers has applied the requested policy or the changes will take effect after the context switch? I have the same question about memory policy appliance. e)Also the shared libs running only on the kernel's node, right? I will appreciate also any link or study material about numa on Linux. Chris Margiolas Undergraduate Student Computer Science Department University of Crete Ics Forth=A0Computer Architecture and VLSI Systems Lab