00:39:04 -!- prxq [~mommer@mnhm-590c38e1.pool.mediaWays.net] has quit [Remote host closed the connection] 00:55:04 -!- asedeno_work [asedeno@nat/google/x-bwhyrychkusxdiho] has quit [Remote host closed the connection] 01:13:32 Vivitron [~Vivitron@pool-98-110-213-33.bstnma.fios.verizon.net] has joined #sbcl 02:00:30 asedeno_work [asedeno@nat/google/x-vmfqidxryrwzsdgw] has joined #sbcl 03:38:12 kangtu [~kangtu@c-76-104-226-166.hsd1.wa.comcast.net] has joined #sbcl 03:39:16 rcl library question: when I load rcl library with (in-package :rcl) and (r-init), I got error msg debugger invoked on a FLOATING-POINT-INVALID-OPERATION in thread 03:39:31 is there anybody know what is this? 03:56:16 -!- wbooze [~wbooze@xdsl-78-35-166-51.netcologne.de] has quit [Ping timeout: 245 seconds] 04:07:09 attila_lendvai [~attila_le@37.99.86.97] has joined #sbcl 04:07:09 -!- attila_lendvai [~attila_le@37.99.86.97] has quit [Changing host] 04:07:09 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl 04:44:17 exit 04:44:22 -!- kangtu [~kangtu@c-76-104-226-166.hsd1.wa.comcast.net] has quit [Quit: rcirc on GNU Emacs 23.3.1] 04:53:52 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 05:13:45 attila_lendvai [~attila_le@37.99.86.97] has joined #sbcl 05:13:45 -!- attila_lendvai [~attila_le@37.99.86.97] has quit [Changing host] 05:13:45 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl 05:47:06 sdemarre [~serge@91.176.196.235] has joined #sbcl 06:23:01 irc as notepad: if my bisect run is right, 1.0.31.13 is the first failing build on xcl 06:23:09 now to find out why 08:05:16 nydel [~jo@ip72-197-235-21.sd.sd.cox.net] has joined #sbcl 08:12:40 what is the command (equivalent to :ls in clisp) in sbcl that gives a list of intern things 08:14:39 -!- galdor [galdor@def92-10-88-162-192-107.fbx.proxad.net] has quit [Ping timeout: 252 seconds] 08:17:32 nydel: you could use do-symbols. It's a standard macro that #lisp can help you use. 08:40:09 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 09:09:06 Fare [fare@nat/google/x-pgmylgivttqlgluf] has joined #sbcl 09:32:50 wbooze [~wbooze@xdsl-87-79-194-107.netcologne.de] has joined #sbcl 10:39:48 nikodemus [~nikodemus@37-219-129-59.nat.bb.dnainternet.fi] has joined #sbcl 10:39:49 -!- ChanServ has set mode +o nikodemus 10:41:08 afternoon 10:44:40 hm, i think i want a fast and amortized-consing set for word-sized integer keys. only needs add-to-set, remove-from-set, and in-set-p. (amortized consing: the size of the preallocated storage should settle down so most new additions are non-consing) 10:45:24 no guarantees about the key distribution 10:45:32 I have this unpublished data structure ;) 10:45:56 seriously? :) 10:45:58 needs random bits, though 10:46:50 in keys? 10:46:58 no, for rebalancing purposes 10:47:05 ah 10:47:07 http://discontinuity.info/~pkhuong/balanced-bsearch.c 10:48:09 i would expect typical set-sizes to be small, and a non-locking fast-path for uncontested cases would be /really/ nice 10:48:22 ah, threads as well... 10:48:28 (this is for a reader-set) 10:48:35 so keys would be pthread ids 10:49:05 is this a lock safety thing? 10:49:27 "does this thread already have this lock for reading"? 10:50:35 there's always the option of keep a table in each thread. 10:50:36 pnpuff [~pnpuff@gateway/tor-sasl/pnpuff] has joined #sbcl 10:50:40 *keeping even 10:52:01 that and a simple-vector playing the role of a hash-table are my current best options 10:52:42 who reads from these sets? 10:52:49 is it multi producers single consumer? 10:55:00 for lock i have in mind the min requirement is that everyone just reads and writes their own id 10:55:38 i'm willing to make it hard for writers to know just who is reading the lock, and forego deadlock detection for now 10:57:10 is it for rw locks? I'd consider starting with just allowing a fixed number of concurrent writers. 10:58:17 you mean readers? 10:58:28 erh, right. 10:59:21 heh. i have frlocks already (writers get precedence, readers need to retry if a writer entered or left while they were inside the lock), which are nice and fast, but not suitable for eg. hash-tables 10:59:49 so now i'm looking at brlocks 11:00:45 after a couple of disastorously badly performing implementations i decided that probably what's good enough for linux is good enough for sbcl... 11:02:23 I've some old papers that report good results with just multiple spinlocks 11:02:29 readers grab any one, writers grab all of them. 11:02:40 interesting 11:03:00 It's basically the same as the semaphore implementation, but with less CC issues 11:03:07 right 11:04:51 especially if readers decide where to start hunting for a free lock randomly or based on their tid 11:07:40 -!- pnpuff [~pnpuff@gateway/tor-sasl/pnpuff] has left #sbcl 11:07:59 i'll give it a go 11:08:41 does it have a name? 11:08:49 eheh 11:09:07 can't remember. 11:09:18 exside-in 11:09:51 IIRC, the original paper actually only mapped a couple tids (e.g. 64 or 256) to low sequential integers, and acquired the locklets with byte writes 11:10:16 so they had to punt to a counting rw lock 11:10:53 but since you want to have a list of readers, it seems simpler to forego the counting lock and acquire with the full thread id. 11:11:21 that sounds more familiar. twla, or something 11:14:58 -!- wbooze [~wbooze@xdsl-87-79-194-107.netcologne.de] has quit [Quit: none] 11:16:13 In the meantime, just a bunch of spinlocks sounds like an apt description ;) 11:16:47 wbooze [~wbooze@xdsl-87-79-194-107.netcologne.de] has joined #sbcl 11:18:40 *nikodemus* tries not to be sidetracked into adding fd-based waits for non-futex platforms 11:18:51 later, not today 11:24:04 ah yes... just event count objects would be nice. 11:24:20 or even java-style thread parking. 11:26:55 ok, brlock mockup without readersets performs acceptably 11:27:21 -!- kanru [~kanru@kanru-1-pt.tunnel.tserv15.lax1.ipv6.he.net] has quit [Ping timeout: 272 seconds] 11:27:37 now let's try the n-locks thing... 11:28:50 by the way, i'd really like to have sb-ext:core-count and sb-ext:processor-count 11:30:34 kanru [~kanru@kanru-1-pt.tunnel.tserv15.lax1.ipv6.he.net] has joined #sbcl 11:34:14 if you don't need readerset, ISTM reader/writer ticket locks would be a simpler baseline 11:49:15 +1 for core-count and processor-count, btw thanks for the lovely response on lispreddit niko, will respond soon 12:11:16 -!- nikodemus [~nikodemus@37-219-129-59.nat.bb.dnainternet.fi] has quit [Ping timeout: 245 seconds] 12:34:50 pnpuff [~pnpuff@gateway/tor-sasl/pnpuff] has joined #sbcl 12:35:11 -!- pnpuff [~pnpuff@gateway/tor-sasl/pnpuff] has left #sbcl 12:40:46 -!- nydel [~jo@ip72-197-235-21.sd.sd.cox.net] has quit [Quit: Lost terminal] 13:01:01 homie [~levgue@xdsl-87-79-194-107.netcologne.de] has joined #sbcl 13:38:49 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 260 seconds] 13:45:56 antoszka [~antoszka@unaffiliated/antoszka] has joined #sbcl 14:16:40 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 265 seconds] 14:26:26 nikodemus [~nikodemus@37-136-40-14.nat.bb.dnainternet.fi] has joined #sbcl 14:26:27 -!- ChanServ has set mode +o nikodemus 14:34:04 antoszka [~antoszka@unaffiliated/antoszka] has joined #sbcl 14:41:56 -!- nikodemus [~nikodemus@37-136-40-14.nat.bb.dnainternet.fi] has quit [Ping timeout: 248 seconds] 14:48:31 nikodemus [~nikodemus@37-136-228-11.nat.bb.dnainternet.fi] has joined #sbcl 14:48:31 -!- ChanServ has set mode +o nikodemus 14:58:05 https://github.com/nikodemus/sb-rw-locks/blob/master/sb-rw-locks.lisp # about all the lisp i had time for this week 15:00:23 nikodemus: I'll send patches in some time later this week 15:00:39 the frlock could be a single-word seqlock 15:01:37 how can you squeeze it to one word? 15:02:38 write lock in the low bit 15:02:45 ah 15:02:56 version counter in the rest, readers spin while the write lock is taken. 15:03:38 but you still need pre and post counters, no? 15:03:54 no, you can release the write lock and increment the counter in a single atomic operation 15:04:13 oh, duh. :) 15:06:04 for general purpose use i still think reflective capabilities are important 15:06:27 ... so consing queue locks? 15:06:36 eugh 15:07:19 at least enough information to signal an error when a thread would deadlock with itself 15:07:50 preferably enough information to check for cycles when about to block, but i can live without that 15:10:00 but i was thinking of adding a defstruct lock-impl, putting most of mutex there, and inherinting from it for most things that need a mutex to avoid that extra memory indirection :) 15:13:45 I don't know if I like conflating is-a and has-a... 15:14:55 I think I'd rather build a protocol to pin objects and pass interior pointers... really. 15:17:59 -!- nikodemus [~nikodemus@37-136-228-11.nat.bb.dnainternet.fi] has quit [Ping timeout: 268 seconds] 15:20:41 nikodemus [~nikodemus@37-219-0-244.nat.bb.dnainternet.fi] has joined #sbcl 15:20:42 -!- ChanServ has set mode +o nikodemus 15:25:14 -!- nikodemus [~nikodemus@37-219-0-244.nat.bb.dnainternet.fi] has quit [Ping timeout: 240 seconds] 15:50:49 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 272 seconds] 16:12:57 attila_lendvai [~attila_le@37.99.86.97] has joined #sbcl 16:12:57 -!- attila_lendvai [~attila_le@37.99.86.97] has quit [Changing host] 16:12:57 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl 16:14:14 leuler [~user@p548FC6EE.dip.t-dialin.net] has joined #sbcl 16:28:54 antoszka [~antoszka@unaffiliated/antoszka] has joined #sbcl 16:36:25 -!- wbooze [~wbooze@xdsl-87-79-194-107.netcologne.de] has quit [Quit: none] 16:40:26 -!- homie [~levgue@xdsl-87-79-194-107.netcologne.de] has quit [Read error: Connection reset by peer] 16:41:53 wbooze [~wbooze@xdsl-78-35-166-248.netcologne.de] has joined #sbcl 16:45:12 -!- wbooze [~wbooze@xdsl-78-35-166-248.netcologne.de] has quit [Remote host closed the connection] 16:46:45 wbooze [~wbooze@xdsl-78-35-166-248.netcologne.de] has joined #sbcl 16:52:14 -!- Fare [fare@nat/google/x-pgmylgivttqlgluf] has quit [Ping timeout: 240 seconds] 16:55:26 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 245 seconds] 17:02:30 -!- Vivitron [~Vivitron@pool-98-110-213-33.bstnma.fios.verizon.net] has quit [Ping timeout: 264 seconds] 17:14:23 antoszka [~antoszka@unaffiliated/antoszka] has joined #sbcl 17:36:01 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 252 seconds] 17:44:23 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Ping timeout: 244 seconds] 17:45:00 attila_lendvai [~attila_le@37.99.87.236] has joined #sbcl 17:45:01 -!- attila_lendvai [~attila_le@37.99.87.236] has quit [Changing host] 17:45:01 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl 17:45:54 edgar-rft [~GOD@HSI-KBW-078-043-123-191.hsi4.kabel-badenwuerttemberg.de] has joined #sbcl 17:56:25 -!- gko [~user@114-34-168-13.HINET-IP.hinet.net] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 18:00:16 -!- wbooze [~wbooze@xdsl-78-35-166-248.netcologne.de] has quit [Quit: none] 18:01:02 wbooze [~wbooze@xdsl-78-35-166-248.netcologne.de] has joined #sbcl 18:01:16 -!- pchrist [~spirit@gentoo/developer/pchrist] has quit [Quit: leaving] 18:01:39 pchrist [~spirit@gentoo/developer/pchrist] has joined #sbcl 18:10:21 antoszka [~antoszka@unaffiliated/antoszka] has joined #sbcl 18:41:03 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 18:49:44 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 260 seconds] 18:51:13 antoszka [~antoszka@unaffiliated/antoszka] has joined #sbcl 18:58:55 -!- antoszka [~antoszka@unaffiliated/antoszka] has quit [Ping timeout: 272 seconds] 19:05:01 antoszka [~antoszka@unaffiliated/antoszka] has joined #sbcl 19:49:12 -!- specbot [~specbot@tiger.common-lisp.net] has quit [Remote host closed the connection] 19:49:12 -!- minion [~minion@tiger.common-lisp.net] has quit [Remote host closed the connection] 19:49:32 minion [~minion@tiger.common-lisp.net] has joined #sbcl 19:49:32 specbot [~specbot@tiger.common-lisp.net] has joined #sbcl 19:49:47 -!- specbot [~specbot@tiger.common-lisp.net] has quit [Remote host closed the connection] 19:49:47 -!- minion [~minion@tiger.common-lisp.net] has quit [Remote host closed the connection] 19:54:19 homie [~levgue@xdsl-78-35-166-248.netcologne.de] has joined #sbcl 20:29:19 -!- sdemarre [~serge@91.176.196.235] has quit [Ping timeout: 246 seconds] 20:31:42 Fare [fare@nat/google/x-zenhipokdvjzihjj] has joined #sbcl 21:07:19 -!- leuler [~user@p548FC6EE.dip.t-dialin.net] has quit [Quit: ERC Version 5.1.2 $Revision: 1.796.2.6 $ (IRC client for Emacs)] 21:13:30 -!- edgar-rft [~GOD@HSI-KBW-078-043-123-191.hsi4.kabel-badenwuerttemberg.de] has quit [Quit: sudden death] 23:33:29 nikodemus [~nikodemus@37-219-23-84.nat.bb.dnainternet.fi] has joined #sbcl 23:33:29 -!- ChanServ has set mode +o nikodemus 23:37:23 -!- wbooze [~wbooze@xdsl-78-35-166-248.netcologne.de] has quit [Quit: none] 23:41:41 -!- nikodemus [~nikodemus@37-219-23-84.nat.bb.dnainternet.fi] has quit [Ping timeout: 245 seconds] 23:42:23 wbooze [~wbooze@xdsl-78-35-166-248.netcologne.de] has joined #sbcl 23:57:26 nikodemus [~nikodemus@37-219-186-244.nat.bb.dnainternet.fi] has joined #sbcl 23:57:26 -!- ChanServ has set mode +o nikodemus