Re: [vox-tech] another gcc question (Branch Delay Slots)

2002-03-01 Thread Bill Broadley

 In modern processors you can take this much further 
   parallel speculative execution and dedicate *HUGE* amounts of chip
   space to be able to run *both* sides of the branch operation in parallel
   and then forget the results of the side that shouldn't have been run
   once you know the outcome of the conditional test... some processors
   can even nest this a few levels so that a branch who's both children
   also split could in theory not stall the processor.

I'd call this a bit optimistic.  Branch prediction is common, even
through multiple branches, intermediate results are stored in shadow
registers and only committed once the branch has been verified as correct.
These shadow registers are not architectually visible.  So when a branch
is mispredicted you just clear all the pipelines, don't commit
the related shadow registers and start over.  

Not that their are no such machines that exist that follow both branches,
but I bet noone on vox-tech owns one.  Hrm, at least the only chip I
know of that has it is the IA64/itanium, last I checked they had sold
2200 of them, which sounded good, till IBM mentioned they had 2000 of
them in a large parallel computer.  

Alas branches average 1 in every 7 cycles, cpu pipelines are growing
into the 10-20 cycle range, with 4-8 functional units running you could
easily loose 100's of instructions with a branch mispredict.

The current branch prediction is fairly sophisticated stuff, many cpu's
have more then one algorithm, some put prediction info in the cache line,
some depend on interactions with the compiler to attempt to make the
branchs easier to predict by rearranging the braches to be more similar
to each other.  Some strategies include history for the branch, and some
cpu's even implement more then one strategy and then track which is most
accurate for a branch.

I haven't read all of this thread, but it seems like the loop unrolling
typically goes like:

for (i = 0; i  100; i++)
  {
  do_stuff(i);
}

Crap, if do_stuff isn't much work I spend most of my time doing
a compare, test and jump, so lets unroll:
for (i = 0; i  100; )
  {
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
}

Oh, hrm, what happens if I the number of loops (100) changes?  That is
a bit more difficult but we could do something like:

while ((100-i)unroll factor)
for (i = 0; i  100; )
  {
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
  do_stuff(i); i++;
}

for (j = i; j  100; j++)
  {
  do_stuff(j);
}


Then a cool guy named Duff figured out:

  j = 0;
  count=100;
  n = (count + 7) / 8;
  switch (count % 8)
{
  do
{
case 0:
  do_stuff(j);
  j++;
case 7:
  do_stuff(j);
  j++;
case 6:
  do_stuff(j);
  j++;
case 5:
  do_stuff(j);
  j++;
case 4:
  do_stuff(j);
  j++;
case 3:
  do_stuff(j);
  j++;
case 2:
  do_stuff(j);
  j++;
case 1:
  do_stuff(j);
  j++;
}
  while (--n  0);
}

Despite it not looking very dense, it's actually quite efficient, and
reasonably flexible.  It gracefully handles a dynamic number of loops
that don't have to be a multiple of the unrolling factor.

It's commonly refered to as Duff's device.

 Now if you have a smart compiler (that knows how to reorder), 
   and
 the code in question has operations which can be used to fill the
 branch delay slots, 
   and 
 the chip builders don't want to waste lots of chip space to be 
 able to speculatively execute

Yes, chip builders like to design simple chips, the $billion question
is how to improve useful work done per cycle with the doubling every
18 month transistor budget.

My current favorite technique that might actually improve this
significantly (work done per cycle hasn't changed much in the last 10
doublings of transistors budgets or so) is SMT, the ability for a cpu to
run multiple threads/processes at the same time during the same cycle.
An alpha (RIP) paper showed a factor of 2.5 in the amount of work done
per cycle with identical cpu resources (except for SMT).  Pretty amazing
stuff, especially useful now that quad issue 1.5-2.0 Ghz cpu's are fairly
common and memory is as far away as ever (about 100 ns or so)

Anyways, enough rambling, late.r

-- 
Bill Broadley
Mathematics/Institute of Theoretical Dynamics
UC Davis
___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



Re: [vox-tech] regarding config issues wiht Armada e500 (was win98)

2002-03-01 Thread Ryan

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

It's actualy an Armada V300, but the e500 is an almost identical model

On Thursday, February 28 2002 10:14 pm, Steven Peck wrote:
 Doesn't Compaq systems let you modify them from bootable Compaq CD Roms?

I have no idea, I bought the thing used without any CDs.

 How old is this laptop and have you tried Compaq's support site for
 this?  The have an email response system where you ask a question and
 they try and get you a response in 24 hours.  It has run about 85%
 accurate on some server issues, which is not bad for email support
 correct on first answer.

I could just call them, Armadas are thier corprate targeted laptops, so the 
hold is always under 5 minuets.

 -sp




 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]] On Behalf Of Ryan
 Sent: Thursday, February 28, 2002 8:16 PM
 To: [EMAIL PROTECTED]
 Subject: Re: [vox-tech] How slim can Win98 go?

 On Thursday, February 28 2002 08:14 pm, Mark K. Kim wrote:
  You could also get a laptop HD from someone.  Or an old laptop.  Just

 use

  the HD, then switch it back when you're done.  You don't even need to

 buy

  it, just borrow it, if you can find someone with an old laptop laying
  around.

 I should have thought of that.

  Also, many BIOS configuration utilities work under DOS, so you don't
  necessarily need Windows, but just the DOS (fits on a floppy...)  That
  depends on the utility, though, I suppose.

 These are Windows utils.

  -Mark
 
  On Thu, 28 Feb 2002, Ryan wrote:
   -BEGIN PGP SIGNED MESSAGE-
   Hash: SHA1
  
   hrm, oh, idea!
  
   IDE = laptop drive adaptor + old HD
  
   Anyone know how much the adaptors cost? Better yet, anyone got one I

 can

   borrow?
  
   My laptop HD is only a 6 gigger, so I'm a bit cramped to waste 400

 MB on

   a bios configuration utility.
  
   On Thursday, February 28 2002 07:33 pm, Mark K. Kim wrote:
I've installed a pretty comfortably bare Windows95 that took up

 about

350MB.  Looking at my current Windows98 partition (another

 comfortably

bare installation), it looks like just the Windows part is taking

 up

about 500MB; but this partition's been around for several months

 so I'm

sure there's lots of junk in c:\windows and the registry.
   
-Mark
   
On Thu, 28 Feb 2002, Ryan wrote:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 I was poking around the net looking for a way to set my laptop's
 contrast, and I found
 http://www.informatik.uni-kiel.de/~fst/linux_armada_e500.html .

 It

 says that power saving hotkey works in linux, so I could set my

 cpu

 to 250 and run for nearly 3 hours.

 However --- these options need to be set in windows, the bios

 doesn't

 have the options in it's menu. :(

 Anyway, does anyone know what the bare minimum install for

 windows 98

 is? - --
 No Microsoft products were used in any way for the creation of

 this

 message. PGP Public key at
 http://mother.com/~ryan/ryan_at_mother_dot_com.asc It is also on

 the

 servers: Key ID 0x72177BC7
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v1.0.6 (GNU/Linux)
 Comment: For info see http://www.gnupg.org

 iD8DBQE8fsw0Ed9E83IXe8cRAnSpAKDBphWoRnTmjgOoh0oQh0woh1i5dwCgyER6
 CBrtKaS/+Z/F3FiPiQRUbn4=
 =aRcz
 -END PGP SIGNATURE-
 ___
 vox-tech mailing list
 [EMAIL PROTECTED]
 http://lists.lugod.org/mailman/listinfo/vox-tech
  
   - --
   No Microsoft products were used in any way for the creation of this
   message. PGP Public key at
   http://mother.com/~ryan/ryan_at_mother_dot_com.asc It is also on the
   servers: Key ID 0x72177BC7
   -BEGIN PGP SIGNATURE-
   Version: GnuPG v1.0.6 (GNU/Linux)
   Comment: For info see http://www.gnupg.org
  
   iD8DBQE8fv1DEd9E83IXe8cRAqYhAKCo+u5agZwL5tQUR3obT/ZU45ucEgCgn7gH
   ARKwE71JXCI+581WWaYYLF4=
   =m5kr
   -END PGP SIGNATURE-
   ___
   vox-tech mailing list
   [EMAIL PROTECTED]
   http://lists.lugod.org/mailman/listinfo/vox-tech

- -- 
No Microsoft products were used in any way for the creation of this message.
PGP Public key at http://mother.com/~ryan/ryan_at_mother_dot_com.asc
It is also on the servers: Key ID 0x72177BC7
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE8f5kWEd9E83IXe8cRAn/LAKC/vDYQxU2zUaWKcpTGt0hz/3OGFACggnJC
r0/PVCNomHGhOt0WK70SxvY=
=tHnU
-END PGP SIGNATURE-
___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



Re: [vox-tech] How slim can Win98 go?

2002-03-01 Thread Stephen M. Helms

Another thought is download the trial version of VMWare install Windows, setup the
hardware and remove windows / vmware.
___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



Re: [vox-tech] How slim can Win98 go?

2002-03-01 Thread Ryan

I bought VMware Express a while ago, but it's of no use, the software would 
need to have access to the CMOS/BIOS.

 Another thought is download the trial version of VMWare install Windows, 
setup the
 hardware and remove windows / vmware.
 ___
 vox-tech mailing list
 [EMAIL PROTECTED]
 http://lists.lugod.org/mailman/listinfo/vox-tech




___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



[vox-tech] ip_masq-quake.o

2002-03-01 Thread Peter Jay Salzman

what exactly does this module do?

other than opening up the quake ports and forwarding them to the proper
internal LAN machine, what do you need a kernel module for in order to
serve quake games?

pete

-- 
Enron..safe legal abortion..civil liberty..repealing ICBM treaty..deficit..
What's worse?  Screwing an intern or screwing an entire country?

PGP Fingerprint: B9F1 6CF3 47C4 7CD8 D33E  70A9 A3B9 1945 67EA 951D
___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



Re: [vox-tech] ip_masq-quake.o

2002-03-01 Thread speck

The definitive site... well it was.  Now it looks like you'll have to do some wading

http://www.tsmservices.com/masq/cfm/main.cfm

Oh wait, it seems to be here:
http://www.e-infomax.com/ipmasq/

IIRC it so that the appropriate connections are made and MASQ'd properly if you are 
playing Quake, or any number f other games that use essentially the same port settings 
behind a NAT'd network.  If you host a Quake server, you have to open up ports 
differently.

-sp


On Fri, 01 March 2002, Peter Jay Salzman wrote:

 
 what exactly does this module do?
 
 other than opening up the quake ports and forwarding them to the proper
 internal LAN machine, what do you need a kernel module for in order to
 serve quake games?
 
 pete
 
 -- 
 Enron..safe legal abortion..civil liberty..repealing ICBM treaty..deficit..
 What's worse?  Screwing an intern or screwing an entire country?
 
 PGP Fingerprint: B9F1 6CF3 47C4 7CD8 D33E  70A9 A3B9 1945 67EA 951D
 ___
 vox-tech mailing list
 [EMAIL PROTECTED]
 http://lists.lugod.org/mailman/listinfo/vox-tech


___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



Re: [vox-tech] ip_masq-quake.o

2002-03-01 Thread Samuel Merritt

On Fri, Mar 01, 2002 at 12:34:08PM -0800, Peter Jay Salzman wrote:
 what exactly does this module do?
 
 other than opening up the quake ports and forwarding them to the proper
 internal LAN machine, what do you need a kernel module for in order to
 serve quake games?

I don't think this is intended to help with serving It seems to handle 
the forwarding of Quake packets to clients behind a masq box, so that when 
a client behind the masq box connects to a server, UDP packets from the 
server are sent back to the client 

Kernel 24 seems to do this automagically I've never loaded any 
Quake-specific kernel modules on my 24-based masq box, and I've never had 
any problems with Quake (Q3|Quakeworld) playing 

-- 
Samuel Merritt
PGP key is at http://wwwcsifcsucdavisedu/~merritt/snmerrittasc
Information about PGP can be found at http://wwwmindspringcom/~aegreene/pgp/



msg01663/pgp0.pgp
Description: PGP signature


Re: [vox-tech] How slim can Win98 go?

2002-03-01 Thread Stephen M. Helms

Well, I am not sure If I want to part with it, but I could let you borrow it for
awhile.  It is actually a 8.45mm drive instead of the 12mm or 19mm thickness that
some older laptops had.

I did see 2GB ($39.99) and 4GB ($49.99) laptop drives on weekly special at
halted.com


Ryan wrote:

 I have a lot of junk. I have about 1.8 gigs of free space.

 The drive would be great, thanks. Will you need it back (I'm fine either way)?

___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



Re: [vox-tech] ip_masq-quake.o

2002-03-01 Thread Peter Jay Salzman

doug,

what exactly do you mean by related ip traffic?

pete


begin [EMAIL PROTECTED] [EMAIL PROTECTED] 
 IIRC, ipchains and ipfw didn't handle related ip 
 traffic. It was one of the most annoying features of 
 that firewalling code. You had to load other modules so 
 that related ip traffic could follow the same rules. 
 With the masq modules you could define one set of rules 
 for say ftp and then realted ip traf could be handled.
 
 I remember having alot of trouble with FTP until I RTFM 
 and loaded the right modules.
 
 -doug
___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



Re: [vox-tech] ip_masq-quake.o

2002-03-01 Thread Peter Jay Salzman

i just stumbled across something which seems to support this -- it said
that the kernel module is used when 2 masqueraded machines want to play
an internet game at the same time.

pete


begin Samuel Merritt [EMAIL PROTECTED] 
 On Fri, Mar 01, 2002 at 12:34:08PM -0800, Peter Jay Salzman wrote:
  what exactly does this module do?
  
  other than opening up the quake ports and forwarding them to the proper
  internal LAN machine, what do you need a kernel module for in order to
  serve quake games?
 
 I don't think this is intended to help with serving. It seems to handle 
 the forwarding of Quake packets to clients behind a masq box, so that when 
 a client behind the masq box connects to a server, UDP packets from the 
 server are sent back to the client. 
 
 Kernel 2.4 seems to do this automagically. I've never loaded any 
 Quake-specific kernel modules on my 2.4-based masq box, and I've never had 
 any problems with Quake (Q3|Quakeworld) playing. 
 
 -- 
 Samuel Merritt
 PGP key is at http://wwwcsif.cs.ucdavis.edu/~merritt/snmerritt.asc
 Information about PGP can be found at http://www.mindspring.com/~aegreene/pgp/



-- 
Enron..safe legal abortion..civil liberty..repealing ICBM treaty..deficit..
What's worse?  Screwing an intern or screwing an entire country?

PGP Fingerprint: B9F1 6CF3 47C4 7CD8 D33E  70A9 A3B9 1945 67EA 951D
___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech



Re: [vox-tech] How is lugod.org put together?

2002-03-01 Thread nbs

On Thu, Feb 28, 2002 at 08:55:52PM -0800, Peter Jay Salzman wrote:
 
 although -- wait.  isn't there a dotfile.org already?

dotfiles.org.  Seem to have gone away and been replaced with a big
'coming soon' page. :(


   Domain Name: DOTFILES.ORG

   Administrative Contact, Technical Contact, Billing Contact:
  Momoi, Yasunari  (YM233)  [EMAIL PROTECTED]
  BUG.ORG
  2-27-1-601 Ayase
  Adachi-ku
  Tokyo
  120-0005
  JP
  +81-90-7731-5086 (FAX) none

   Record last updated on 08-Jan-2002.
   Record expires on 01-Mar-2004.
   Record created on 01-Mar-2000.
   Database last updated on 1-Mar-2002 07:48:00 EST.



-bill!
___
vox-tech mailing list
[EMAIL PROTECTED]
http://lists.lugod.org/mailman/listinfo/vox-tech