{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":718882776,"defaultBranch":"main","name":"splaycast","ownerLogin":"momentohq","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-11-15T01:31:15.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/72094596?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1702583628.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"59e8494e99fb87803610454bb950e505a2b61141","ref":"refs/heads/shortpoll_queueslot","pushedAt":"2023-12-14T19:53:48.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"add a second slot for contended wake\n\nWake takes up most of the cpu time, and crossbeam uses some spin\nlogic internally. To reduce the risk of starving async threads,\nthis change adds a second slot for wakers and round robins between\nthem.\n\nThere's no need for strict fairness on servicing these queues, so\nthe way that measures best is used: just drain them one at a time.\nThis does not look as hot in the tokio benchmark, but it reduces\nthe time spent in crossbeam tremendously in a tight loop observed\nby a flamegraph.","shortMessageHtmlLink":"add a second slot for contended wake"}},{"before":"bf4e9d28b7920b106d40429f94c53b0521d28dda","after":"f30b7f5611c2df53fa34d483d692382c7cf3c04e","ref":"refs/heads/shortpoll","pushedAt":"2023-12-14T19:16:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"fix library docstring","shortMessageHtmlLink":"fix library docstring"}},{"before":"63d7404c43f44a2a2fbd9255a47baa1a8a0132d0","after":"bf4e9d28b7920b106d40429f94c53b0521d28dda","ref":"refs/heads/shortpoll","pushedAt":"2023-12-14T19:13:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"switch channel() to spmc\n\nUsing an spsc adapter from rtrb, this shaves runtime cost off of\nthe publisher, resulting in 1-2% latency reduction. Splaycast\nStream wrappers are already spmc, so this just makes the channel()\nvariant take advantage of that semantic.","shortMessageHtmlLink":"switch channel() to spmc"}},{"before":null,"after":"63d7404c43f44a2a2fbd9255a47baa1a8a0132d0","ref":"refs/heads/shortpoll","pushedAt":"2023-12-14T00:14:47.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"shorten engine polls\n\nA best practice for large wake lists","shortMessageHtmlLink":"shorten engine polls"}},{"before":"ead122d0da549949abcdf84087566c020ed087e5","after":"5643cb1e9b4a7191b473e34657473973f94099af","ref":"refs/heads/main","pushedAt":"2023-12-13T18:48:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"Release 0.2.0\n\nsplaycast@0.2.0\n\nGenerated by cargo-workspaces","shortMessageHtmlLink":"Release 0.2.0"}},{"before":"0e308c8beeef9861c89c5a4f5d8c6b87a5f0e1c1","after":"ead122d0da549949abcdf84087566c020ed087e5","ref":"refs/heads/main","pushedAt":"2023-12-13T18:47:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"add channel()\n\nThis adds an internal stream wrapper, rather than an external one.\nThe channel()'s stream wrapper relies on a crossbeam queue.","shortMessageHtmlLink":"add channel()"}},{"before":"a344086d52f7a1b47ea862adf0be597ec75c119b","after":"0e308c8beeef9861c89c5a4f5d8c6b87a5f0e1c1","ref":"refs/heads/main","pushedAt":"2023-11-16T00:02:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"flip the bench back to the intended threads list","shortMessageHtmlLink":"flip the bench back to the intended threads list"}},{"before":"8b1dce055d1cdd2b3d97e5c399fba8814d02e3dc","after":"a344086d52f7a1b47ea862adf0be597ec75c119b","ref":"refs/heads/main","pushedAt":"2023-11-15T02:05:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"docs: add benchmark images","shortMessageHtmlLink":"docs: add benchmark images"}},{"before":null,"after":"8b1dce055d1cdd2b3d97e5c399fba8814d02e3dc","ref":"refs/heads/main","pushedAt":"2023-11-15T01:31:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"kvcache","name":"Kenny","path":"/kvcache","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/86278669?s=80&v=4"},"commit":{"message":"update cargo.toml","shortMessageHtmlLink":"update cargo.toml"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAADyqsc8gA","startCursor":null,"endCursor":null}},"title":"Activity ยท momentohq/splaycast"}