Commit Graph

19337 Commits

Author SHA1 Message Date
Philip Monk
0574546b77
Merge branch 'ford-fusion' (#3060)
* ford-fusion: (259 commits)
  clay: remove scaffolding
  kiln: make otas continue even if they failed to apply
  metadata-store: add cleanup utility, use on-poke:def instead of no-op
  clay: flop syntax error trace
  landscape/img/codeeval.png: typo in filename
  invite-view: reinstate as potato
  goad: don't crash on pre-OTA sign
  chat-store: responded to comments, cleaned up
  -test: support other desks (full beams in args)
  arvo: use date instead of kelvin
  hoon: re-fix +slab; /tests: fix clay tests
  kiln: don't implicitly create syncs
  gall: don't make large stack trace
  ames: use +cut in +encrypt
  pill: solid
  dojo: print generator type errors
  Squashed commit of the following:
  ci: fix herb tests; update pills
  ford,kiln: nicer errors
  dojo: too many nouns
  ...

Signed-off-by: Philip Monk <phil@pcmonk.me>
2020-06-29 16:07:38 -07:00
Philip Monk
e7e2c07d6f
clay: remove scaffolding 2020-06-29 14:30:33 -07:00
Philip Monk
40db8ea580
kiln: make otas continue even if they failed to apply 2020-06-29 13:25:10 -07:00
Isaac Visintainer
a958cb9288 metadata-store: add cleanup utility, use on-poke:def instead of no-op 2020-06-29 11:07:26 -04:00
Ted Blackman
ede7105820 clay: flop syntax error trace 2020-06-29 11:01:23 -04:00
Ted Blackman
7611c2fc08 landscape/img/codeeval.png: typo in filename 2020-06-29 05:26:41 -04:00
Ted Blackman
29a6234633 invite-view: reinstate as potato 2020-06-29 05:15:25 -04:00
Ted Blackman
043b8a4cc0 goad: don't crash on pre-OTA sign 2020-06-29 02:43:52 -04:00
Logan Allen
3b8790cc04 chat-store: responded to comments, cleaned up 2020-06-29 00:24:18 -04:00
Ted Blackman
d7b9889b4a -test: support other desks (full beams in args) 2020-06-28 05:06:16 -04:00
Ted Blackman
f6171042ae arvo: use date instead of kelvin 2020-06-28 01:13:42 -04:00
Ted Blackman
7266b3f5c3 hoon: re-fix +slab; /tests: fix clay tests 2020-06-28 00:59:02 -04:00
Philip Monk
42de999024
kiln: don't implicitly create syncs
Also silence some spurious errors.
2020-06-26 19:21:09 -07:00
Philip Monk
0301838f25
Merge remote-tracking branch 'origin/release/next-sys' into ford-fusion 2020-06-26 17:46:25 -07:00
Philip Monk
271abcd3e7
vere: bump version to 0.10.7 2020-06-26 11:17:02 -07:00
Philip Monk
c6d536a676
Merge branch 'philip/linux' (#3054)
* origin/philip/linux:
  libsigsegv: disable stack vma check

Signed-off-by: Philip Monk <phil@pcmonk.me>
2020-06-26 11:15:31 -07:00
Philip Monk
2713083386
libsigsegv: disable stack vma check
This patches libsigsegv to not check the stack vma on Linux, since that
involves reading procfs, and we make very heavy use of sigsegv.  This
eliminates most of urbit's performance discrepancy between Linux and
MacOS.  These are the benchmarks used; note this is a local MBP vs a
cloud Linux server, and the MBP is almost certainly faster hardware.

We take two benchmarks, one of which decrements 10 million times and the
other simply allocates 125MB of memory.  These are the results:

cpu-heavy ==  =/ n 10.000.000 |-(?~(n n $(n (dec n))))
mem-heavy == =a (bex 1.000.000.008)

macos, cpu-heavy: 6 seconds
macos, mem-heavy: 1 second

linux-before, cpu-heavy: 30 seconds
linux-before, mem-heavy: 160 seconds

linux-after, cpu-heavy 9 seconds
linux-after, mem-heavy 1.3 seconds

This represents a 3x speedup for the cpu-heavy operation and a 120x
speedup for the memory-heavy operation.

This check was used to try to distinguish stack overflow from other
forms of segmentation fault.  In the comments in src/handler-unix.c, it
describes three heuristics it uses, depending on what's available from
the OS.  In the linux-i386 case, all three are availble, so we simply
disable the slow one.  This correctly recognizes stack overflow if you
simply alloca(10000000000).
2020-06-26 11:15:01 -07:00
Philip Monk
77df80d603
gall: don't make large stack trace 2020-06-26 09:20:17 -07:00
Ted Blackman
ef138bb007 ames: use +cut in +encrypt 2020-06-25 22:54:37 -04:00
Ted Blackman
26ff47b93d Merge remote-tracking branch 'origin/release/next-userspace' into ford-fusion 2020-06-25 22:24:30 -04:00
Ted Blackman
d9b00b0869 pill: solid 2020-06-25 22:07:40 -04:00
Ted Blackman
3daecd8c1b Merge remote-tracking branch 'origin/fix-slab' into ford-fusion 2020-06-25 21:58:21 -04:00
Ted Blackman
c0e5bd8d9b Merge remote-tracking branch 'origin/la/chat-space-leak' into ford-fusion 2020-06-25 21:52:04 -04:00
Ted Blackman
68802ea041 dojo: print generator type errors 2020-06-25 15:38:15 -04:00
Ted Blackman
1216510fdb Squashed commit of the following:
commit 8f6aee0fdb
Author: Ted Blackman <ted@tlon.io>
Date:   Thu Jun 25 03:13:19 2020 -0400

    ci: revert debugging artifacts

commit e13a7fc050
Author: Ted Blackman <ted@tlon.io>
Date:   Thu Jun 25 02:48:55 2020 -0400

    ci: try @joemfb's one weird trick
2020-06-25 03:25:31 -04:00
Ted Blackman
82cfc691ce ci: fix herb tests; update pills 2020-06-25 02:14:16 -04:00
Philip Monk
51c6faaa31
ford,kiln: nicer errors 2020-06-24 21:24:58 -07:00
Philip Monk
7044f1fae6
dojo: too many nouns 2020-06-24 21:24:58 -07:00
Philip Monk
3a662881be
clay: don't be evil 2020-06-24 21:24:27 -07:00
Philip Monk
fc42bf6039
clay: special-case +run-pact for %hoon 2020-06-24 20:26:04 -07:00
Philip Monk
f238bbfde0
Merge branch 'philip/mem' (#3041)
* philip/mem:
  vere: bump version to 0.10.6
  ci: add travis as trusted user
  jets: use appropriate macro
  noun: add -C to control memo cache size
  jets: restore fond/play/peek hooks
  jam: add commented-out functionality to count size of atom
  jets: cap memo cache and remove peek, play, and fond jets
  noun: add functions to count size of noun

Signed-off-by: Philip Monk <phil@pcmonk.me>
2020-06-24 19:23:15 -07:00
Philip Monk
cbb80e9e7d
vere: bump version to 0.10.6 2020-06-24 19:09:03 -07:00
Philip Monk
627df6d41f
ci: add travis as trusted user 2020-06-24 18:36:40 -07:00
Philip Monk
f9d02263ee
jets: use appropriate macro 2020-06-24 17:11:46 -07:00
Philip Monk
361e41e78d
noun: add -C to control memo cache size 2020-06-24 17:08:50 -07:00
Philip Monk
71fa03457c
jets: restore fond/play/peek hooks 2020-06-24 13:42:51 -07:00
matildepark
77925b06be
Merge pull request #3048 from urbit/mp/spa-debug-debug
dbug: init new channel on start
2020-06-24 12:01:20 -04:00
Matilde Park
67a09d7d19 dbug: init new channel on start 2020-06-23 21:46:20 -04:00
matildepark
32b045cd5e
Merge pull request #3038 from urbit/lf/ts-global-store
interface: global (typed) store
2020-06-23 21:18:31 -04:00
Liam Fitzgerald
98f9dddebe Merge branch 'release/next-userspace' into lf/ts-global-store 2020-06-24 11:16:44 +10:00
Liam Fitzgerald
5bcbfe25a4 contacts-js: dismiss spinner on share 2020-06-24 11:11:13 +10:00
ixv
3d27c63a21
Merge pull request #3042 from urbit/mp/publish/restore-edits
publish: edit post content no longer tied to api
2020-06-23 17:51:17 -07:00
Matilde Park
42adb02b6b groups: fix broken image upload src 2020-06-22 22:38:21 -04:00
Matilde Park
ceff9626c5 publish: edit post content no longer tied to api
The component for editing a post was tied up in checking for API
instantiation -- we want the check for a blank body to be independent
of that.

Fixes #3040.
2020-06-22 22:36:39 -04:00
Philip Monk
6c3b7aeef5
jam: add commented-out functionality to count size of atom
This is a convenient way to count memory usage of noun by simplying
running `(jam 1.337 noun-1 noun-2 ... ~)`.  This should
be a hint, but for debugging this is sufficient.
2020-06-22 19:29:00 -07:00
Philip Monk
fa6748a7e1
jets: cap memo cache and remove peek, play, and fond jets
With these changes, about 90% less memory and 15% less time is needed to
compile hoon.hoon.  The produced noun is within 3% of the same size,
which suggests this results in little if any duplication.

These are three of the four most commonly hit +ut jets.  The other is
+nest, which cannot be un-memoized without taking much longer to compile
(it didn't finish in my test).  These four jets combined for 2.3 million
out of the 2.4 million cache entries, the other +ut jets combine for
less than 100k, and literal ~+ accounted for about 50k entries.

This also caps the memo cache at 50k entries.  Even with these jets not
memoized, the memo cache grows to 357k entries and 122 MB.  Capping at
50k entries has no effect on time and reduces memory usage of the hash
table to about 25MB.  Entries are reclaimed with the clock algorithm,
which seems to be sufficient for this use.
2020-06-22 19:29:00 -07:00
Philip Monk
d8aed4d4af
noun: add functions to count size of noun
Adds a few functions to count the size of nouns in the current road.
Since this marks the nouns (high bit of refcount), you need to
"discount" them immediately after to unmark them.  Parallel functions
exist for the counting the size of a hashtable.

It would nice to hook this up to a hint, but these are useful to have
available to run in the debugger or by inserting callsites as necessary.
It's also possible to hook them up to the +jam jet gated on a special
value.
2020-06-22 19:29:00 -07:00
Ted Blackman
154f153801 gall: fix routes in +ap-yoke 2020-06-22 21:37:17 -04:00
Liam Fitzgerald
292c5625e3 interface: always show sidebar on nav 2020-06-23 11:05:31 +10:00
Liam Fitzgerald
555857513a launch-js: update to global store 2020-06-23 10:19:57 +10:00