Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes. Set by lizmat on 24 May 2021. |
|||
00:07
reportable6 left
00:08
reportable6 joined
01:38
evalable6 left,
linkable6 left
01:40
linkable6 joined,
evalable6 joined
03:50
evalable6 left,
linkable6 left
03:52
evalable6 joined,
linkable6 joined
04:52
nativecallable6 left,
bloatable6 left,
committable6 left,
unicodable6 left,
tellable6 left,
coverable6 left,
statisfiable6 left,
releasable6 left,
greppable6 left,
bisectable6 left,
sourceable6 left,
linkable6 left,
evalable6 left,
reportable6 left,
shareable6 left,
benchable6 left,
notable6 left,
quotable6 left,
sourceable6 joined,
coverable6 joined,
evalable6 joined
04:53
releasable6 joined,
notable6 joined,
nativecallable6 joined,
bloatable6 joined
04:54
linkable6 joined,
unicodable6 joined,
shareable6 joined,
benchable6 joined,
tellable6 joined,
greppable6 joined,
committable6 joined,
reportable6 joined
04:55
quotable6 joined,
statisfiable6 joined,
bisectable6 joined
06:07
reportable6 left
06:10
reportable6 joined
08:36
linkable6 left,
evalable6 left
08:37
linkable6 joined
08:38
evalable6 joined
10:47
notable6 left,
committable6 left,
releasable6 left,
shareable6 left,
bisectable6 left,
quotable6 left,
nativecallable6 left,
statisfiable6 left,
evalable6 left,
tellable6 left,
unicodable6 left,
greppable6 left,
benchable6 left,
linkable6 left,
coverable6 left,
sourceable6 left,
bloatable6 left,
reportable6 left,
reportable6 joined,
statisfiable6 joined
10:48
benchable6 joined,
tellable6 joined,
committable6 joined,
unicodable6 joined,
releasable6 joined
10:49
sourceable6 joined,
bloatable6 joined,
notable6 joined,
nativecallable6 joined,
evalable6 joined,
greppable6 joined,
bisectable6 joined,
quotable6 joined
10:50
shareable6 joined,
linkable6 joined,
coverable6 joined
10:51
sena_kun joined
11:51
linkable6 left,
evalable6 left
11:52
linkable6 joined
11:53
evalable6 joined
12:06
reportable6 left
12:07
reportable6 joined
14:01
evalable6 left,
committable6 left,
notable6 left,
sourceable6 left,
bisectable6 left,
bloatable6 left,
unicodable6 left,
linkable6 left,
benchable6 left,
reportable6 left,
greppable6 left,
shareable6 left,
tellable6 left,
quotable6 left,
statisfiable6 left,
releasable6 left,
nativecallable6 left,
coverable6 left
14:02
benchable6 joined,
releasable6 joined,
committable6 joined,
notable6 joined,
statisfiable6 joined,
bisectable6 joined
14:03
evalable6 joined,
tellable6 joined,
bloatable6 joined,
unicodable6 joined,
linkable6 joined,
reportable6 joined
14:04
greppable6 joined,
sourceable6 joined,
shareable6 joined,
nativecallable6 joined,
quotable6 joined,
coverable6 joined
|
|||
Kaiepi | i tried using uv_timer_t to sleep(0) instead of yielding, but apparently that api forks? | 16:46 | |
i did manage to get sleep(0e0)/nanosleep(0) to work given recent changes, but it's rather slow | |||
17:27
evalable6 left,
linkable6 left
17:29
linkable6 joined,
evalable6 joined
|
|||
jnthn | Kaiepi: What's the original goal here? Semaphore (along with similar classes) were really intended to expose the primitive kernel-supported locks/sempahores; if you want something a bit different and are willing to depend on yield and atomics, there's no reason to put it in MoarVM, because those are all available in Raku. | 17:41 | |
tellable6 | 2022-07-22T07:39:31Z #moarvm <Kaipii> jnthn, do you have any suggestions on how to benchmark semaphore ops reliably? | ||
jnthn | No yield/sleep/whatever is going to be as effective for longer waits as something where the OS schedule is aware of it. | 17:42 | |
*scheduler | |||
Kaiepi | jnthn, to get an implementation of Semaphore with some equivalent to sem_getvalue | 17:54 | |
so we can get a serializable, thread-safe counter for the MOP | 17:55 | ||
(or at least a more efficient one) | 17:56 | ||
18:07
reportable6 left,
reportable6 joined
|
|||
jnthn | Counter? Is an atomic integer not enough? | 19:17 | |
Kaiepi | an atomic integer requires a container | 19:18 | |
jnthn | Not quite, just a reference to an integer lexical/attribute/array elemnt | ||
And if the concern is performance, one can create that reference once and use it many times | 19:19 | ||
Ah, and if it's for the MOP, and nobody got around to it yet, there might be a little setup work to do to make those available in NQP | 19:20 | ||
github.com/rakudo/rakudo/blob/a7e9....nqp#L1899 is a place to look at how the setup is done if wanting to do it for NQP | 19:22 | ||
20:49
sena_kun left
21:53
releasable6 left,
greppable6 left,
quotable6 left,
committable6 left,
linkable6 left,
sourceable6 left,
evalable6 left,
tellable6 left,
benchable6 left,
reportable6 left,
nativecallable6 left,
unicodable6 left,
coverable6 left,
bisectable6 left,
notable6 left,
statisfiable6 left,
bloatable6 left,
shareable6 left,
shareable6 joined,
bloatable6 joined
21:54
sourceable6 joined,
reportable6 joined,
notable6 joined,
unicodable6 joined
21:55
coverable6 joined,
releasable6 joined,
benchable6 joined,
evalable6 joined,
committable6 joined,
tellable6 joined,
statisfiable6 joined,
linkable6 joined
21:56
greppable6 joined,
quotable6 joined,
nativecallable6 joined,
bisectable6 joined
22:56
evalable6 left,
linkable6 left,
evalable6 joined
22:58
linkable6 joined
|