Page MenuHomeWildfire Games

Mercury (Mercury)
User

Projects

User Details

User Since
May 10 2022, 1:35 AM (19 w, 4 d)

Recent Activity

Thu, Sep 15

Mercury added a comment to D4758: Rearrange GC scheduling for reduced lag.

No worries, do you need me to upload again?

Thu, Sep 15, 2:19 AM

Tue, Sep 13

Mercury added inline comments to D4758: Rearrange GC scheduling for reduced lag.
Tue, Sep 13, 10:46 PM
Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

Added time units (seconds, milliseconds) to variable names.

Tue, Sep 13, 10:39 PM

Sat, Aug 27

Mercury updated the diff for D4775: Prevent echoing simulation commands back to their source client..

Space after if.

Sat, Aug 27, 11:13 PM
Mercury requested review of D4775: Prevent echoing simulation commands back to their source client..
Sat, Aug 27, 1:19 AM

Fri, Aug 26

Mercury added inline comments to D4773: Normalize names for ClientId in /network.
Fri, Aug 26, 11:45 PM
Mercury added inline comments to D4773: Normalize names for ClientId in /network.
Fri, Aug 26, 11:11 PM
Mercury added inline comments to D4773: Normalize names for ClientId in /network.
Fri, Aug 26, 11:02 PM
Mercury added inline comments to D4773: Normalize names for ClientId in /network.
Fri, Aug 26, 10:40 PM
Mercury updated the summary of D4773: Normalize names for ClientId in /network.
Fri, Aug 26, 10:32 PM
Mercury added inline comments to D4773: Normalize names for ClientId in /network.
Fri, Aug 26, 9:24 PM
Mercury updated the diff for D4773: Normalize names for ClientId in /network.

changed 1 to 1u, updated copyright year.

Fri, Aug 26, 9:24 PM
Mercury requested review of D4773: Normalize names for ClientId in /network.
Fri, Aug 26, 11:15 AM

Aug 21 2022

Mercury added inline comments to D4758: Rearrange GC scheduling for reduced lag.
Aug 21 2022, 1:16 AM
Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

Removed m_LastGCTime, changed a comment, added gcInProgress.

Aug 21 2022, 1:16 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 21 2022, 12:57 AM

Aug 18 2022

Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 18 2022, 12:21 AM
Mercury added a comment to D4758: Rearrange GC scheduling for reduced lag.

What about the comment on timer_Time?

Aug 18 2022, 12:17 AM
Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

changed some int to u32

Aug 18 2022, 12:15 AM
Mercury added a comment to D4758: Rearrange GC scheduling for reduced lag.

Didn't mean to submit yet, diff isn't ready, sorry.

Aug 18 2022, 12:11 AM
Mercury added a comment to D4758: Rearrange GC scheduling for reduced lag.

Not a problem at all, I appreciate the time you put in to get it right :)

Aug 18 2022, 12:09 AM

Aug 15 2022

Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

uint32_t changed to u32.

Aug 15 2022, 11:58 PM
Mercury added a comment to D4758: Rearrange GC scheduling for reduced lag.

Ok, that's another task to add to the to-do list then. It should give a significant result in terms of graphics smoothness as well as freeing up some more time for simulation to run.

Aug 15 2022, 11:07 PM
Mercury added a comment to D4758: Rearrange GC scheduling for reduced lag.

Since the patch is about timing i don't see how to test it without introducing a race condition.

Aug 15 2022, 2:03 AM
Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

uint32_t changed to u32

Aug 15 2022, 2:01 AM

Aug 14 2022

Mercury added inline comments to D4758: Rearrange GC scheduling for reduced lag.
Aug 14 2022, 11:00 PM
Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

Add some includes, use timer_Time.

Aug 14 2022, 10:59 PM
Mercury updated the summary of D4760: Reduce simulation turns per second from 5 to 4.
Aug 14 2022, 9:08 PM
Mercury added a comment to D4760: Reduce simulation turns per second from 5 to 4.

Reduce simulation thread load by ~10% (maybe a bit less, can't think of a way to test) and network traffic by 10-18%, depending on player APM. 500ms indeed sounds like too much. But 200 might have been an over-correction. The difference from 2 turns per second to 5 turns per second is ~1/3 second, but the difference between 5 and 4 is 1/20 second. I think this is small enough to not make a big difference.

Aug 14 2022, 9:07 PM
Mercury updated the summary of D4760: Reduce simulation turns per second from 5 to 4.
Aug 14 2022, 8:35 PM
Mercury requested review of D4760: Reduce simulation turns per second from 5 to 4.
Aug 14 2022, 4:25 AM

Aug 13 2022

Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

Changed type of gcPressure to double, changed type of gcBytes and gcMaxBytes to uint32_t, as well as m_HeapGrowthBytesGCTrigger and m_LastGCBytes. Added some const. Edited some comments.

Aug 13 2022, 10:00 PM
Mercury added a comment to D4758: Rearrange GC scheduling for reduced lag.

Slice runs fewer times because it's time budget is typically higher. The total amount of RAM consumed should remain the same.

Aug 13 2022, 9:39 PM
marder awarded D4758: Rearrange GC scheduling for reduced lag a Party Time token.
Aug 13 2022, 11:01 AM
Mercury added a reviewer for D4758: Rearrange GC scheduling for reduced lag: Stan.
Aug 13 2022, 8:38 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 7:33 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 7:23 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 7:20 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 7:17 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 7:12 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 7:12 AM
Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

Replaced the constant 200 with the variable turnLength in Simulation2.cpp. Edited comment.

Aug 13 2022, 6:55 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 6:37 AM
Mercury retitled D4758: Rearrange GC scheduling for reduced lag from Rearrange GC scheduling for reduced latency to Rearrange GC scheduling for reduced lag.
Aug 13 2022, 6:36 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 6:31 AM
Mercury updated the summary of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 6:28 AM
Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

Space after if.

Aug 13 2022, 6:23 AM
Mercury updated the diff for D4758: Rearrange GC scheduling for reduced lag.

Copyright year, trailing white space, comment format.

Aug 13 2022, 4:39 AM
Mercury requested review of D4758: Rearrange GC scheduling for reduced lag.
Aug 13 2022, 4:10 AM

Aug 12 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Aug 12 2022, 7:21 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Use range based loop in graphics/mapWriter.cpp

Aug 12 2022, 7:21 AM

Aug 10 2022

Mercury added a comment to D4718: Allocator and generator for component data..

No I haven't tested multiplayer.

Aug 10 2022, 12:31 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Formatting, range based looping, avoid stack allocation in Game::IsFinished.

Aug 10 2022, 12:27 AM

Aug 9 2022

Mercury added a comment to D4718: Allocator and generator for component data..

I haven't deeply read the code for source/lib/allocators/* or the code which uses them so I don't know.

Aug 9 2022, 3:03 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

changed range based loop to std::for_each in destructor.

Aug 9 2022, 2:57 AM

Aug 8 2022

Mercury added a comment to D4718: Allocator and generator for component data..

@Stan some of it will be coming from avoiding unnecessary copying, passing by reference. The theoretical complexity cost of removing the capacity limit is negligible. I would want to do more runs and average them together before I trusted that number to mean anything beyond that it hasn't gotten any worse. But I'm too tired to do that right now.

Aug 8 2022, 11:18 AM
Mercury added a comment to D4718: Allocator and generator for component data..

@Stan %12.7 ๐Ÿ‘ (based off one run)

Aug 8 2022, 10:36 AM
Mercury added a comment to D4718: Allocator and generator for component data..

Hello @jprahman, thank you for your help! I think there is more performance to be found, some in network and some in SpiderMonkey GC. Hopefully some more in territory calculations. After those we may want to try multi-threading. A lagless TG might be possible :)

Aug 8 2022, 10:10 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Added more tests, made ComponentDataHolder::Pools return a reference, renamed AllocFunc to ConstructFunc, use for_each in ComponentDataHolder::Destruct, use range based loop in ComponentManager::ResetState.

Aug 8 2022, 9:33 AM

Jul 28 2022

Mercury updated the diff for D4718: Allocator and generator for component data..

version control fail.

Jul 28 2022, 3:39 AM
Mercury added a comment to D4718: Allocator and generator for component data..

Changed uint_32 types for vector indices to size_t. Supposedly the type should be std::vector<std::byte*>>::size_type, but I haven't been able to get that to work.

Jul 28 2022, 3:21 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

More specific names and types, use for_each in CComponentDataHolder::ResetState.

Jul 28 2022, 3:16 AM

Jul 26 2022

Mercury updated the diff for D4718: Allocator and generator for component data..

Changed the data type of SComponentDataGenerator::m_LastIndex from bool to uint_32,

Jul 26 2022, 8:14 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Previous upload was a mistake, this one is better hopefully.

Jul 26 2022, 1:12 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Allocator is now able to expand to arbitrary capacity.

Jul 26 2022, 12:10 AM

Jul 6 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jul 6 2022, 5:43 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Formated some comments.

Jul 6 2022, 5:43 AM

Jul 5 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jul 5 2022, 9:37 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

reworked CGame::IsGameFinished, mostly changed it back to it was before. Seems like a dependency injection issue.

Jul 5 2022, 8:06 AM
Mercury added inline comments to D4718: Allocator and generator for component data..
Jul 5 2022, 6:00 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Simplified CGame::IsGameFinished

Jul 5 2022, 6:00 AM

Jul 4 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jul 4 2022, 7:42 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

exclude graph2.*

Jul 4 2022, 2:45 AM
Mercury added inline comments to D4718: Allocator and generator for component data..
Jul 4 2022, 1:55 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

included tests.

Jul 4 2022, 1:30 AM

Jul 3 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jul 3 2022, 11:37 PM
Mercury updated the diff for D4718: Allocator and generator for component data..

Added a test file.
Standardized instance of SComponentDataGenerator names to 'gen'.
Renamed some instances of the ordered list given by GetComponentsByInterface from ents to comps.
Changed ComponentType.dealloc to ComponentType.destruct.
Changed type name of ComponentType.dealloc from DeallocFunc to DestructFunc.

Jul 3 2022, 11:32 PM

Jul 2 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jul 2 2022, 12:22 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Renamed GetEntitiesWithInterface to GetComponentsByInterface and GetEntitiesWithInterfaceUnordered to GetComponentsByInterfaceUnordered.

Jul 2 2022, 12:20 AM

Jun 30 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jun 30 2022, 5:33 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Fixed broken upload from yesterday. Sorry.

Jun 30 2022, 4:53 AM

Jun 29 2022

Mercury updated the diff for D4718: Allocator and generator for component data..

std::byte* instead of void*. Explicit keyword on SComponentDataGenerator constructor.

Jun 29 2022, 6:04 AM

Jun 28 2022

Mercury added a comment to D4718: Allocator and generator for component data..

I haven't tested multiplayer or rejoin, Ill have to dig up my old laptop.

Jun 28 2022, 1:43 AM

Jun 27 2022

Mercury added a comment to D4718: Allocator and generator for component data..

On Combat Demo Huge I see a 4% improvement vs. main. This is kinda a worst case scenario for this code since we have a single peak that trails off rather then the multiple peaks and valleys pattern it was written for.

Jun 27 2022, 11:47 PM
Mercury updated the diff for D4718: Allocator and generator for component data..

Added spaces after where and for.

Jun 27 2022, 1:27 AM
Mercury added a comment to D4719: graph2.html and graph2.js.

Ah, ok! Ill implement the average and total code inside prolfile2 instead then.

Jun 27 2022, 12:48 AM
Mercury added a comment to D4719: graph2.html and graph2.js.

Profile2 as i understand it is for seeing the performance of a running game in real time. This is an alternative to graph.html and graph.js as used in simulation replay mode.

Jun 27 2022, 12:16 AM

Jun 26 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jun 26 2022, 11:36 PM

Jun 25 2022

Mercury updated the summary of D4719: graph2.html and graph2.js.
Jun 25 2022, 10:01 AM
Mercury added inline comments to D4718: Allocator and generator for component data..
Jun 25 2022, 9:56 AM
Mercury updated the diff for D4718: Allocator and generator for component data..

Moved CComponentDataHolder and SComponentDataGenerator from heap to stack. Added alignment.

Jun 25 2022, 9:44 AM

Jun 22 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jun 22 2022, 2:24 AM

Jun 21 2022

Mercury added inline comments to D4718: Allocator and generator for component data..
Jun 21 2022, 10:43 PM
Mercury added inline comments to D4718: Allocator and generator for component data..
Jun 21 2022, 9:32 PM
Mercury updated the diff for D4718: Allocator and generator for component data..

Indentation, voidptr

Jun 21 2022, 9:04 PM
Mercury requested review of D4718: Allocator and generator for component data..
Jun 21 2022, 4:11 AM
Mercury requested review of D4719: graph2.html and graph2.js.
Jun 21 2022, 1:07 AM

May 13 2022

Mercury updated the diff for D4643: Assign credit for units killed by cmpGarisonHolder.EjectOrKill.

formatting whitespace, change some let to const.

May 13 2022, 7:58 AM
Mercury updated the diff for D4643: Assign credit for units killed by cmpGarisonHolder.EjectOrKill.

Default arguments for EjectOrKill, removed VIM from .gitignore

May 13 2022, 7:15 AM

May 12 2022

Mercury added inline comments to D4643: Assign credit for units killed by cmpGarisonHolder.EjectOrKill.
May 12 2022, 7:07 PM