[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Low-level vs. High-level programming
- Subject: Re: Low-level vs. High-level programming
- From: "White Flame \(aka David Holz\)" <whiteflame52@y.a.h.o.o.com>
- Date: Tue, 24 Jun 2003 23:41:17 -0700
- Newsgroups: comp.sys.cbm, comp.sys.apple2, rec.games.video.classic, comp.os.cpm
- Organization: Network Access Services, Inc.
- References: <b3qo6h$5ar$1@barad-dur.nas.com> <RFoJa.7756$mS2.5421@fe04.atl2.webusenet.com> <bd6922$157j$1@merope.saaf.se> <NSFJa.2$uK1.0@fe05.atl2.webusenet.com> <bd902c$22qb$1@merope.saaf.se> <bd96oo$ian$5@titan.btinternet.com> <bdb0gp$cmc$1@barad-dur.nas.com> <8Z7Ka.9126$XR4.3297@fe03.atl2.webusenet.com>
- Xref: archiver1.google.com comp.sys.cbm:59325 comp.sys.apple2:31906 rec.games.video.classic:59438 comp.os.cpm:13561
"Randy McLaughlin" <randy@nospam.com> wrote in message
news:8Z7Ka.9126$XR4.3297@fe03.atl2.webusenet.com...
> On older machines precise timing was available (counting clock cycles).
On today's machines it's still the same, although normally not with anything
that spans functions: Managing the cache lines, keeping pipelines full, and
all those sorts of code ordering tricks. However, it is somewhat possible
to accomplish this from high-level languages by ordering around code, using
simple operations that correspond directly to asm instructions (register int
a; ... a += 3; etc), continually observing the generated assembly code, and
turning off optimizations that overturn what you're trying to manage by
hand. The nice thing about doing this instead of raw asm is that you can
easily and gradually migrate from a general-case prototype to
processor-specific code.
--
White Flame (aka David Holz)
http://www.white-flame.com/
(spamblock in effect)