These are chat archives for YoEight/eventstore

6th
Feb 2017
Akii
@Akii
Feb 06 2017 10:09
yet another issue: once you create a subscription, the CPU usage is considerably higher than without for no apparent reason
any idea where that might come from?
getting 50% usage every few seconds
that can hardly be processing the heartbeat
Yorick Laupa
@YoEight
Feb 06 2017 10:14
Do you have heartbeat timeout ?
You suffering of things I never got nor my clients
So can't tell much
One thing I noticed though is I can really increase parallelism in the driver code
I can easily double the event output
Akii
@Akii
Feb 06 2017 10:17
just a thing I noticed here and on my production server
will have to investigate
Yorick Laupa
@YoEight
Feb 06 2017 10:18
that isn't a bug for me though but a performance issue
Akii
@Akii
Feb 06 2017 10:19
didn't say it's a bug! :D
Yorick Laupa
@YoEight
Feb 06 2017 10:19
been able to process crazy amount of events without noticing anything
Akii
@Akii
Feb 06 2017 10:19
only affects catchup-subs though
Yorick Laupa
@YoEight
Feb 06 2017 10:19
but
Akii
@Akii
Feb 06 2017 10:19
I'm talking about idling CPU time
nothing happens and it spikes a lot
Yorick Laupa
@YoEight
Feb 06 2017 10:20
the it's really depends on how fast the client process the events
subscription are push based
Akii
@Akii
Feb 06 2017 10:20
that makes it even more odd
Yorick Laupa
@YoEight
Feb 06 2017 10:21
not if you have a catchup and have a lot of events in your stream
Akii
@Akii
Feb 06 2017 10:21
well at some point you caught up
Yorick Laupa
@YoEight
Feb 06 2017 10:21
I mean you CPU isn't maxed out for 30mins straight am I wrong ?
Akii
@Akii
Feb 06 2017 10:21
now locally it needs 30% cpu constantly
no
literally idling now
and it needs 15 - 30%
Yorick Laupa
@YoEight
Feb 06 2017 10:22
how is the memory usage ?
is it increasing for instance ?
Akii
@Akii
Feb 06 2017 10:22
no
around 150 MB but I keep a lot of stuff in memory
Yorick Laupa
@YoEight
Feb 06 2017 10:23
not a lot
Akii
@Akii
Feb 06 2017 10:23
will try to reproduce this with a minimal example now
Yorick Laupa
@YoEight
Feb 06 2017 10:23
anyway I know I can improve the driver performance a lot
but 15-30% of CPU time, never experience it
on server grade CPU for that matter
Akii
@Akii
Feb 06 2017 10:24
well there it might be less ^^
but it's doing something where it should do nothing
Yorick Laupa
@YoEight
Feb 06 2017 10:26
nothing not really
but not a lot for sure
as you noticed, it has heartbeat requests but he shouldn't take that much of cpu
Akii
@Akii
Feb 06 2017 10:27
but those heartbeat requests run independently of subscriptions, right?
Yorick Laupa
@YoEight
Feb 06 2017 10:28
I didn't benchmark yet, but on my pending refactoring, I switched from TVar to IORef in lot of places
STM are much expensive
Akii
@Akii
Feb 06 2017 10:28
ye
I hope that doesn't introduce new race conditions
is there a branch I can test?
Yorick Laupa
@YoEight
Feb 06 2017 10:28

but those heartbeat requests run independently of subscriptions, right?

yes, there are on a connection level

Akii
@Akii
Feb 06 2017 10:29
chances are good you might fix my other issue as well :P
Yorick Laupa
@YoEight
Feb 06 2017 10:29
it's not ready yet but here it is: prepare/big-release
possible !
have in mind it might have some regression too
Akii
@Akii
Feb 06 2017 10:30
hm regarding the CPU time I maybe fucked up somewhere
can't reproduce with a simple intero program
but weird
meh ^^
but let me check out that branch :>
Yorick Laupa
@YoEight
Feb 06 2017 10:32
sure
anyway I know places I can really improve performance
Akii
@Akii
Feb 06 2017 10:32
like I'm totally fine with performance already
Yorick Laupa
@YoEight
Feb 06 2017 10:32
by a very good margin
Akii
@Akii
Feb 06 2017 10:32
but that sounds nice :D
Yorick Laupa
@YoEight
Feb 06 2017 10:32
always nice :-)
Akii
@Akii
Feb 06 2017 11:06
hm CPU idle seems fine now
idk
maybe I just never noticed
so first thing on the new branch: ConnectionClosed exception :D
Akii
@Akii
Feb 06 2017 11:14
killing the store just ends our test script we used to track that bug
Yorick Laupa
@YoEight
Feb 06 2017 13:57
it's far from ready