beneroth changed the topic of #picolisp to: PicoLisp language | The scalpel of software development | Channel Log: https://libera.irclog.whitequark.org/picolisp | Check www.picolisp.com for more information
razzy has quit [Ping timeout: 260 seconds]
razzy has joined #picolisp
razzy has quit [Ping timeout: 260 seconds]
razzy has joined #picolisp
theruran has quit [Ping timeout: 264 seconds]
theruran has joined #picolisp
aw- has joined #picolisp
theruran has quit [Ping timeout: 256 seconds]
theruran has joined #picolisp
razzy has quit [Ping timeout: 260 seconds]
razzy has joined #picolisp
aw- has quit [Quit: Leaving.]
aw- has joined #picolisp
razzy has quit [Ping timeout: 260 seconds]
razzy has joined #picolisp
<tankf33der> Regenaxer: morning
<tankf33der> i have a server with 1TB memory
<Regenaxer> Good morning tankf33der!
<Regenaxer> wow!
<tankf33der> i wonder how to calculate gc benchmark correctly
<Regenaxer> RAM?
<tankf33der> ram
<Regenaxer> Which benchmark?
<tankf33der> Benchmark of gc
<Regenaxer> Allocate a big heap, fill with data?
beneroth has joined #picolisp
<tankf33der> Like this:
<tankf33der> (gc 1000000)
<tankf33der> (bench (gc))
<Regenaxer> Yes, but this is probably fast, as the heap is empty
<tankf33der> then i need to read something big, right?
<Regenaxer> Depending on the data, it takes longer
<Regenaxer> Not read, this takes too long
<Regenaxer> (need ...)
<Regenaxer> or some tree
<Regenaxer> Perhaps generate random numbers and 'idx' them?
<tankf33der> for 1TB?
<Regenaxer> hehe, yeah
<Regenaxer> Let me estimate
<Regenaxer> (do 40000 (idx 'Tree (rand) T))
<Regenaxer> I think 24 bytes per node on the average
<Regenaxer> 1000000000/24 = 41666667
<Regenaxer> So about 40 million nodes
<Regenaxer> I think this will take hours ;)
<Regenaxer> or at least many minutes
<Regenaxer> GC may take 20 minutes or so?
<tankf33der> Compiled
<tankf33der> should i do (gc 1000000) before?
<Regenaxer> yes, or better (heap 999999)
<Regenaxer> So (do 40000000 ...
<tankf33der> doing
<Regenaxer> :)
<Regenaxer> you are right, (gc 999999) is better
<Regenaxer> otherwise it shrinks again
<tankf33der> Then i should do (gc) or (gc 0) ?
<Regenaxer> (gc)
<tankf33der> ok
<Regenaxer> Seems my size calculations are wrong
<Regenaxer> I tried with 1 GiB, 1/1000 your size
<Regenaxer> ok, needs (gc 999) and (do 40000000 (idx 'Tree (rand) T)), right?
<tankf33der> Right
<Regenaxer> I think 'idx' takes too long
<Regenaxer> very deep tree
<Regenaxer> Better (need ...) ?
<Regenaxer> or (make )
<tankf33der> Let me show you first timing
<Regenaxer> ok
<Regenaxer> finished here:
<Regenaxer> : (gc 999)
<Regenaxer> -> 999
<Regenaxer> : (do 40000000 (idx 'Tree (rand) T))
<Regenaxer> -> NIL
<Regenaxer> : (heap)
<Regenaxer> -> 1015
<Regenaxer> : (heap T)
<Regenaxer> -> 1
<Regenaxer> So the heap is indeed full
<Regenaxer> : (size Tree)
<Regenaxer> -> 66357280
<Regenaxer> : (bench (gc))
<Regenaxer> 8.266 sec
<Regenaxer> -> NIL
<Regenaxer> Size and time should be thousand times more in your case
<Regenaxer> 8000 seconds is more than 2 hours
tankf33der has quit [Quit: the lounge - https://webirc.envs.net]
tankf33der has joined #picolisp
<tankf33der> Test
<tankf33der> Test
<tankf33der> Regenaxer: ping
<Regenaxer> pong
<tankf33der> Still working, will be long
<Regenaxer> yeah
<Regenaxer> I hope the machine is not only big but also fast ;)
<tankf33der> Latest cpu and fast memory (3Ghz)
<Regenaxer> ok
<Regenaxer> Most critical is memory and cache speed
Svjatoslav has joined #picolisp
razzy has quit [Ping timeout: 268 seconds]
razzy has joined #picolisp
razzy has quit [Ping timeout: 240 seconds]
razzy has joined #picolisp
razzy has quit [Ping timeout: 240 seconds]
razzy has joined #picolisp
razzy has quit [Ping timeout: 240 seconds]
razzy has joined #picolisp
aw- has quit [Ping timeout: 245 seconds]
mmvmm has joined #picolisp
<mmvmm> Hello there, does any one have an example of websockets and Picolisp?
<Regenaxer> Hi mmvmm! I think there is an article in the wiki
<mmvmm> I know but all of the links with examples from that art are dead :(
<Regenaxer> oh
<Regenaxer> I never used that, I prefer ServerSentEvents
mmvmm has quit [Quit: Client closed]
aw- has joined #picolisp