freenode/#lisp - IRC Chatlog
Search
20:27:35
defunkydrummer
i understand! Anyways, i need to log out and (invoke-restart #'perform-work)
20:37:04
p_l
dim: an idea that's been following me everytime I see pgloader is of turning it into general (if mostly simple) ETL tool
20:39:43
dim
yeah it's kind of a specialized ETL already, but going generic would turn it into a very different beast, I'm not sure I want to go there. I've done lots of ETL or ELT work in the past, and always with on-purpose tooling hacked around specific needs, never with “general purpose ELT solutions”, I don't believe in those
20:59:01
p_l
dim: well, the only non - general thing from my usage is that pgloader only supports postgres as target
1:04:09
White_Flame
In LOOP, I want a value calculated every iteration, via something like FOR or WITH, so that UNTIL can see it. What's the appropriate keyword to use there?
2:12:37
madmuppet006
I am trying to write a mandelbrot set program .. I can create an image but the image is incorrect .. I have tried reversing list of numbers but still get the same image .. can anyone have a quick look? thanks https://pastebin.com/r0mEgvVq
7:54:08
schweers
I have a very simple class, of which many instances are created. Can using a struct instead significantly reduce the memory footprint of these instances? How can I find out the difference (apart from creating loads of instances and comparing how much memory usage the OS sees, that is)?
7:58:23
beach
schweers: Plus, a class instance probably needs some indication of the state the class was in when the instance was created, so that instances can be updated when the class changes.
7:58:28
phoe
make a Lisp image with 10e6 class instances, measure the OS memory footprint; do the same with 10e6 structs, and then with 10e6 structs allocated as vectors
7:59:18
schweers
beach: in case you meant my small that the class has few slots, then yes, that is the case.
8:08:06
schweers
I have another question: has anyone used lparallel? I don’t yet have hard evidence on this, but it seems to me, that a huge amount of memory is not freed, despite calling END-KERNEL.
8:11:51
no-defun-allowed
Maybe having multiple threads creates garbage faster. Also, it may be that checking htop or your favourite process lister might be confusing because your implementation might not free the memory in order to allocate it faster later.
8:12:03
White_Flame
you can manually run a GC (eg (sb-ext:gc :full t)), but also watch out that repl variables like *, **, *** aren't keeping large things alive
8:13:09
schweers
After end-kernel is called, the process quickly ended up in the debugger (a completely unrelated part of the program, which does not use lparallel). Meaning, the lisp process was still running, but not allocating any significant amount of memory. I have a memory consumption graph which shows that memry went up a lot at the time the lparallel using part of the program started, which did not go down afterwards.
8:14:39
schweers
So this is all not hard evidence, it’s just a hunch. I was asking as it was possible that someone else had a similar issue.
8:16:45
no-defun-allowed
Are you using Lisp functions like ROOM to determine memory usage, or external tools like htop or gnome-system-monitor?