9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Richard Miller <9fans@hamnavoe.com>
To: 9fans@9fans.net
Subject: Re: [9fans] mk time-check/slice issue
Date: Thu, 19 Dec 2013 10:01:33 +0000	[thread overview]
Message-ID: <56fcb87a07be1d1f41475d5d43b09485@hamnavoe.com> (raw)
In-Reply-To: <CABwHSOuTCu8HyLHis3ifWgF8harJ8rM2+8=Okr8cumk4BHS6CQ@mail.gmail.com>

> So, I think you are saying, that for pieces in a mkfile that take less than
> 1s to build it is possible for them to be build again, unnecessarily, when
> mk is run again.  This is normal and just the way it is.  Is that correct?

Correct except for "just the way it is".  There is a principle
involved which is so pervasive to Plan 9 that we often forget to make
it explicit.  To quote Ken Thompson: "Throughout, simplicity has been
substituted for efficiency.  Complex algorithms are used only if their
complexity can be localized."  He was writing in 1978 about UNIX, but
Plan 9 follows firmly in this tradition.  (Linux not so much.)

Using the existing file time stamps costs some efficiency, when
targets are built more often than necessary.  The question is, how
significant is this cost compared to the complexity of adding higher
time resolution?  Note that it's not necessary to run mk repeatedly
until it converges -- the algorithm is conservative in the sense that
it will not build less than required.

So, how many seconds is the unnecessary building of targets actually
costing?




  parent reply	other threads:[~2013-12-19 10:01 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-18 22:01 Blake McBride
2013-12-18 22:08 ` Matthew Veety
2013-12-18 22:42   ` Blake McBride
2013-12-18 22:16 ` erik quanstrom
2013-12-18 22:46   ` Blake McBride
2013-12-19  5:40     ` erik quanstrom
2013-12-19  6:07       ` Bakul Shah
2013-12-19 10:59         ` Charles Forsyth
2013-12-19 14:21           ` Oleksandr Iakovliev
2013-12-19 14:58             ` erik quanstrom
2013-12-19 14:52       ` Blake McBride
2013-12-19 14:55         ` erik quanstrom
2013-12-19 15:58           ` Blake McBride
2013-12-19 16:30             ` Tristan
2013-12-19 16:37               ` Blake McBride
2013-12-19 16:40                 ` Jacob Todd
2013-12-19 17:05                   ` Blake McBride
2013-12-19 17:24                 ` Tristan
2013-12-19 18:30                   ` Blake McBride
2013-12-19 17:59             ` Steffen Daode Nurpmeso
2013-12-19 17:07         ` a
2013-12-19 18:40           ` Blake McBride
2013-12-19 18:58             ` Kurt H Maier
2013-12-19 19:06             ` Matthew Veety
2013-12-19 19:07             ` Kurt H Maier
2013-12-19 19:20               ` Blake McBride
2013-12-19 19:27                 ` Kurt H Maier
2013-12-19 19:42                   ` Blake McBride
2013-12-19 20:02                     ` Kurt H Maier
2013-12-19 20:18                       ` erik quanstrom
2013-12-19 20:23                         ` Kurt H Maier
2013-12-19 19:35                 ` a
2013-12-19 19:09             ` a
2013-12-27 10:16               ` dexen deVries
2013-12-19 19:09             ` erik quanstrom
2013-12-19 19:29               ` Blake McBride
2013-12-19 19:39                 ` Gabriel Diaz
2013-12-19 20:15                 ` Richard Miller
2013-12-19 20:28                   ` Blake McBride
2013-12-19 20:45                     ` Richard Miller
2013-12-20 15:23                       ` Aram Hăvărneanu
2013-12-19 19:12             ` Skip Tavakkolian
2013-12-19 19:22               ` Blake McBride
2013-12-19 19:43                 ` Rudolf Sykora
2013-12-19 19:58                   ` Blake McBride
2013-12-19 19:26             ` sl
2013-12-19 10:01     ` Richard Miller [this message]
2013-12-19 15:01       ` erik quanstrom
     [not found] <CAC0DbM5safEHO_MFpBazvvH6CcGQXGTow-Fe7fkqkP6GrU1Xzw@mail.gmail.com>
     [not found] ` <CAC0DbM7S-xZvOSDwB6KoWH2X8ny_57F9mBE7gaB_BuWR5RSJiw@mail.gmail.com>
2013-12-18 23:09   ` Jason Catena
2013-12-19  5:47     ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56fcb87a07be1d1f41475d5d43b09485@hamnavoe.com \
    --to=9fans@hamnavoe.com \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).