From owner-freebsd-net Sun Jul 7 12:54:16 2002 Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 607B137B400 for ; Sun, 7 Jul 2002 12:54:14 -0700 (PDT) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0109D43E31 for ; Sun, 7 Jul 2002 12:54:03 -0700 (PDT) (envelope-from bright@elvis.mu.org) Received: by elvis.mu.org (Postfix, from userid 1192) id 41F33AE371; Sun, 7 Jul 2002 12:53:21 -0700 (PDT) Date: Sun, 7 Jul 2002 12:53:21 -0700 From: Alfred Perlstein To: Mike Silbersack Cc: net@freebsd.org Subject: Re: the incredible shrinking socket Message-ID: <20020707195321.GN97638@elvis.mu.org> References: <20020707083710.GM97638@elvis.mu.org> <20020707143846.A13771-100000@patrocles.silby.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20020707143846.A13771-100000@patrocles.silby.com> User-Agent: Mutt/1.3.27i Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org * Mike Silbersack [020707 12:36] wrote: > > On Sun, 7 Jul 2002, Alfred Perlstein wrote: > > > Some time ago I noticed that there appeared to be several members > > of struct socket that were either only used by listen sockets or > > only used by data sockets. > > > > I've taken a stab at unionizing the members and we wind up saving > > 28 bytes per socket on i386, and probably nearly double that on > > any 64 bit platform. That's ~15%, which isn't too shabby. > > Unions are ooogly. Would it be possible to seperate listen-only > structures out into a seperate struct instead with a pointer to it? Possibly, but the additional pointer dereference would be expensive and a lot of code would have to change without the compatibility macros. I sort of did it as a proof of concept, but of course since it doesn't completely work I haven't proved it. :) -- -Alfred Perlstein [alfred@freebsd.org] 'Instead of asking why a piece of software is using "1970s technology," start asking why software is ignoring 30 years of accumulated wisdom.' Tax deductible donations for FreeBSD: http://www.freebsdfoundation.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message