libera/commonlisp - IRC Chatlog
Search
13:28:38
hayley
Depending on the sort of tag check, though, it is likely that most do not slow down the program much. A branch predictor can easily predict that type checks will not fail, and a superscalar processor can then run the (probably unnecessary) check in parallel with other code.
13:30:12
Nilby
hayley: I think a small set of mods to current archs could be worthwhile. one does't have to go "whole hog" like the lisp machines. just making the typical lisp function call take less ops, and maybe mild type/tag things, would be great.
13:32:00
Nilby
current toolchain compilers do so many freakish optimizations, it's weird to see what they generate
13:32:09
hayley
My wishlist for hardware features is quite similar to what Azul did: a read barrier in hardware, and hardware transactional memory. Everything else can be Sufficiently Smart Compiler-ed.
13:34:44
hayley
(It is also worth mentioning that, in my domain, some unboxing ops are inconsequential compared to having to "interpret" the matching automaton. So I still win despite the unboxing overhead.)
13:42:26
Nilby
yes, even the increasing use of llvm as library, can't really be as nice as cl:compile
13:46:24
hayley
If you want some cool architectural changes I'd recommend reading <https://dl.acm.org/doi/10.1145/3297858.3304006>
13:55:29
Nilby
hayley: nice paper. that makes me think that if someone just added a memory/object compiler to a lisp, we'd jump a 20% in speed
13:58:05
hayley
The architecture described in that paper would be implemented in hardware. Similarly though, in a general sense, CDR coding is a limited sort of compression, and Henry Baker said CDR coding should return due to memory bandwidth limits.
13:58:50
Nilby
something that would analyze objects and their use, make them less filled with zero bits
14:00:28
hayley
For what it's worth I think Cliff Click did in-memory compression for tabular data, that could "decompress into registers". This compression would also reduce memory bandwidth substantially.
14:00:41
Nilby
yes, but with compiler knowledge, e.g. when it can be reasoned that some bits will never be used
14:03:51
Nilby
because i'm weird and like to scroll around memory, it's very obvious how much is wasted, with the exception of compressed media
14:47:17
pjb
hayley: macOS does in memory compression, before swapping out pages to disk, it swap them out to compressed memory.
16:22:20
dbotton
Is there a lisp function to return the file name with out path and extension from a path or string?
17:20:34
pjb
dbotton: actually: (let ((path "~/.foo")) (or (pathname-name path) (concatenate (quote string) "." (pathname-type path))))
0:06:26
mixotricha
Can somebody remind me what the help channel is for common lisp. Lost all my settings. Sigh.