Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!swrinde!elroy.jpl.nasa.gov!jarthur!nntp-server.caltech.edu!toddpw From: toddpw@nntp-server.caltech.edu (Todd P. Whitesel) Newsgroups: comp.sys.apple2 Subject: Re: Re- HLLs vs. Assembly Message-ID: <1991Apr10.203703.21010@nntp-server.caltech.edu> Date: 10 Apr 91 20:37:03 GMT References: <9104060651.AA18946@apple.com> <1991Apr6.100927.21953@nntp-server.caltech.edu> <1991Apr9.150402.563@latcs2.lat.oz.au> <15782@smoke.brl.mil> <6965@rex.cs.tulane.edu> Organization: California Institute of Technology, Pasadena Lines: 61 lang@rex.cs.tulane.edu (Raymond Lang) writes: >I always thought one of the reasons for using a HLL was so you could >program without having to know the grungy details about the hardware. Yes, but modifying the program to improve performance requires (a) better overall algorithms &/or data structures (b) knowledge about the hardware and what the compiler will produce For instance, one of the unix machines I get to work on is a Convex XP-1, it's screamingly fast BUT there is a ferocious amount of overhead per I/O transfer. A program that fread's 32K chunks will scream past a program that uses fgetc() for any reasonable application that I know of. It also has a vector processor, but the vectorizer can't optimize code like double p[dim], dp[dim]; int i, j; for (j=0; j<255; ++j) { for (i=0; i