home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / unix / bsd / 5149 < prev    next >
Encoding:
Internet Message Format  |  1992-09-07  |  2.5 KB

  1. Path: sparky!uunet!sun-barr!cs.utexas.edu!swrinde!gatech!bloom-beacon!eru.mt.luth.se!lunic!sunic!news.funet.fi!hydra!klaava!torvalds
  2. From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
  3. Newsgroups: comp.unix.bsd
  4. Subject: Re: abysmal performance of X in xgc and x11perf
  5. Message-ID: <1992Sep4.220430.807@klaava.Helsinki.FI>
  6. Date: 4 Sep 92 22:04:30 GMT
  7. References: <BRTMAC.92Sep4124909@maverick.ksu.ksu.edu>
  8. Organization: University of Helsinki
  9. Lines: 40
  10.  
  11. [ I haven't actually looked at the changes that were made to the 387
  12. emulator when porting from linux, but I assume they aren't major, so
  13. this should still be true unless 386bsd does something weird ]
  14.  
  15. In article <BRTMAC.92Sep4124909@maverick.ksu.ksu.edu> brtmac@maverick.ksu.ksu.edu (Brett McCoy) writes:
  16. >I have a 386sx/16 machine without a 387.  Most of the time this
  17. >works fine, but in programs like ico, xgc and x11perf when they
  18. >do floating point intensive stuff the machine more or less locks
  19. >up and I generally have to reboot.
  20. >
  21. >I believe this is because of all the traps to the 387 emulation
  22. >code in the kernel.  I understand it being slow, but why does
  23. >it bring the machine to a virtual halt?
  24.  
  25. I doubt it brings the machine to a halt: other things still get to run. 
  26. The emulator just makes some things very slow - I didn't originally
  27. write it for speed, but for ease of implementation, and I never went
  28. back to look more into it (as I do have a 387, and never actually used
  29. the emulator anyway other than for testing purposes). 
  30.  
  31. >When I run ico everything will freeze for 5 or 10 seconds, then
  32. >the ball will move a ways and other X events will occur (such as
  33. >the mouse cursor moving), then everything will halt again.  It
  34. >seems that while the 387 emulation code is running nothing else
  35. >can run and the emulation code has priority over everything else.
  36.  
  37. It's probably not the 387-emulator that has priority: it's X11.  Things
  38. that don't use the screen should be perfectly all right - but anything
  39. which wants to draw things on the screen has to wait for X to be ready. 
  40. And if X11 is busy calculating sin/cos for arcs, it won't update other
  41. windows, which is why it looks halted. 
  42.  
  43. Try logging in over a serial line to see if that's ok: it will naturally
  44. be slower than on an unloaded machine, as X11 is chugging away on
  45. counting, but it shouldn't be any worse than any other CPU-intensive
  46. task.  And if you are serious about running X, I'd suggest you get a
  47. real 387 pronto: the 387-emulator was never meant to be used for any
  48. "real" calculations. 
  49.  
  50.         Linus
  51.