Call for Saved Games

olduser

Emperor
Joined
Aug 16, 2012
Messages
1,975
To test some changes i could need some saves, especially from advanced games and/or big map sizes.
 
How advanced? Is pre musket too early? Is number of AI important to you as well?
 
I'am doing some turn time testing and different saves with different settings, map sizes and so on can give different results.
So just post what you have it doesn't need to be very advanced.
 
Here you go.
 

Attachments

I have a game where I reached early modern (just researched Industrialism), only problem is it's from a old SVN version (v9553 at the end of march). If you need it, I have several other saves form the start leading to this point of the game.
 

Attachments

Here is save with peppers spacemod on Caveman2Endless map. Curryntly doing AI autoplay (ctrl+shift+x) with single AI and no barbarians.
I'm in medieval era with turns lasting 25 secs.
That is Zulu, Animals and nothing else.
This is Gigantic map, Marathon speed and Noble diffuculty.
Memory usage - slightly less than 2 GB. Currently Zulu has 25 cities.
I adjusted map to contain only one civilization in middle west africa as humanity was confined in that point in 200 000 BC
 

Attachments

Last edited:
Thanks for those saves to everyone.

I was able to confirm my theory that with a few more performance improvements the multithreading in C2C becomes completely useless. It is already not really helping much in terms of turn times as it only gives the cpu more work to do. Also the necessary thread synchronization code slows all the singlethreaded code like the unit turn processing down.

The multithreaded spawn and property systems never really did much they where just two of AIAndy's programming exercises.

The multithreaded city turn pipeline that Koshling added worked at the time that he added it. But back then the city turn processing was really slow because of some bad programming and inefficient code. It's much faster these days and there are still things to improve. I really don't think multithreading is a valid way to fix inefficient code but it's a nice programming exercise.

That's why i'm planning to remove all the multithreading from C2C to make it more efficient.
 
You are most welcome And Thank You for cleaning up this mess we've made. I for one am very Happy you are fixing the inner workings again. :goodjob::clap::hatsoff:
 
Thanks for those saves to everyone.

I was able to confirm my theory that with a few more performance improvements the multithreading in C2C becomes completely useless. It is already not really helping much in terms of turn times as it only gives the cpu more work to do. Also the necessary thread synchronization code slows all the singlethreaded code like the unit turn processing down.

The multithreaded spawn and property systems never really did much they where just two of AIAndy's programming exercises.

The multithreaded city turn pipeline that Koshling added worked at the time that he added it. But back then the city turn processing was really slow because of some bad programming and inefficient code. It's much faster these days and there are still things to improve. I really don't think multithreading is a valid way to fix inefficient code but it's a nice programming exercise.

That's why i'm planning to remove all the multithreading from C2C to make it more efficient.

The current default is 4 for:
Code:
    <Define>
       <DefineName>NUM_CITY_PIPELINE_THREADS</DefineName>
       <iDefineIntVal>4</iDefineIntVal>
   </Define>

Should the Team reduce this "default" to at least 2 for now, till you have completed your work? Would this help turn times even a little?
 
The current default is 4 for:
Code:
    <Define>
       <DefineName>NUM_CITY_PIPELINE_THREADS</DefineName>
       <iDefineIntVal>4</iDefineIntVal>
   </Define>

Should the Team reduce this "default" to at least 2 for now, till you have completed your work? Would this help turn times even a little?

No because the city pipeline needs some threads to compensate it's own overhead. Besides the NUM_CITY_PIPELINE_THREADS is the maximum number threads it uses, i changed it to use a dynamic number of threads some time ago. It starts with 1 and scales up with the number of cities a player has.
 
Okay. Thanks for the clarification.
 
Yes, the multithreading stuff for the property system was a programming exercise with limited results on the time it takes to calculate that stuff. Mostly because the calculation is not really the limiting factor but the memory access and heavy allocation without much regard for cache friendliness.
In general there are a lot of things in the property system that I would do different nowadays. It was designed very generic as I did not know what use people would put it to but in the end only a small subset was actually used, mostly patterns from the examples I wrote. Restricting the system to those specific uses would allow far faster calculation and the possibility to avoid the stability issues.
I considered going back to rewriting it some times but then I think about the ancient compiler and long debug times ...
 
I considered going back to rewriting it some times but then I think about the ancient compiler and long debug times ...

That's completely understandable running C2C with the debug dll is just frustrating. That's why I want to get rid of every unnecessary pice of code and optimize everything I can find using a few different profilers. But C2C is changing all the time the smallest addition can slow things down alot and you can start again.

C2C is memory bound in some areas I noticed that since I have my new laptop. The cpu is 3-5% slower as the one in my desktop pc. But the laptop has faster ddr4 memory and in big games with long turn times that can make those turns 10% shorter.
 
I'm just working on XML for quite a while here so go nuts. I do have a few things to debug but I'll try to stay out of your way in the code as much as possible for a bit here. With the outbreaks and afflictions taken care of in the code and my traits nearing completion and the beginning of unit and building spreadsheet charting getting underway ill be stuck on noncoding stuff for a good long while from here. Good timing for your housecleaning indeed.

Good to see you again AIAndy!
 
Back
Top Bottom