From owner-freebsd-alpha Mon Jun 7 16:35:40 1999 Delivered-To: freebsd-alpha@freebsd.org Received: from wall.polstra.com (rtrwan160.accessone.com [206.213.115.74]) by hub.freebsd.org (Postfix) with ESMTP id D28F314C38 for ; Mon, 7 Jun 1999 16:35:35 -0700 (PDT) (envelope-from jdp@polstra.com) Received: from vashon.polstra.com (vashon.polstra.com [206.213.73.13]) by wall.polstra.com (8.9.3/8.9.1) with ESMTP id QAA29571; Mon, 7 Jun 1999 16:35:34 -0700 (PDT) (envelope-from jdp@polstra.com) Received: (from jdp@localhost) by vashon.polstra.com (8.9.3/8.9.1) id QAA37063; Mon, 7 Jun 1999 16:35:33 -0700 (PDT) (envelope-from jdp@polstra.com) Message-ID: X-Mailer: XFMail 1.3 [p0] on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <14171.60400.466517.68187Y@ett.sat.t.u-tokyo.ac.jp> Date: Mon, 07 Jun 1999 16:35:33 -0700 (PDT) Organization: Polstra & Co., Inc. From: John Polstra To: Hidetoshi Shimokawa Subject: Re: cvs commit: src/lib/csu/alpha crtbegin.c Cc: freebsd-alpha@FreeBSD.org Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Hidetoshi Shimokawa wrote: > I noticed that some large dynamic linked program is slow on alpha. I couldn't resist investigating this. The problem only occurs with large programs, as you mentioned. It doesn't happen with "normal" sized programs. That provides some comfort. :-) I believe the problem occurs when the size of the GOT table exceeds its maximum of 64K bytes. In that case the linker has to construct multiple GOT tables. If you link gdb using "LDFLAGS=Wl,-warn-multiple-gp" you can see the warning about this: gdb: using multiple gp values As you know, the dynamic linker normally patches the GOT table entry on the first call to a function. When there are multiple GOT tables it must be patching the wrong one. This could probably cause worse problems than just slow performance, as you can imagine. That's all I know about it so far. I don't have a fix yet. John --- John Polstra jdp@polstra.com John D. Polstra & Co., Inc. Seattle, Washington USA "Self-interest is the aphrodisiac of belief." -- James V. DeLong To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message