Crisis
Topic Opener
Joined: 2025-02-20, 17:39
Posts: 11
Pry about Widelands
|
Posted at: 2025-02-20, 18:13
Hello, i have a 16 core ryzen but widelands uses only 1 of those cores. I red in one forumtread that Widelands does not set single or multi core itself
how can i make my computer use multicore for widelands?
Top
Quote
|
|
|
Nordfriese
Joined: 2017-01-17, 18:07
Posts: 2088
OS: Debian Testing
Version: Latest master
One Elder of Players
Location: 0x55555d3a34c0
|
Posted at: 2025-02-20, 18:30
Hi,
that info is probably outdated. Widelands 1.1 and newer always uses 2 threads, one for the user interface and one for the game logic.
Top
Quote
|
|
|
Crisis
Topic Opener
Joined: 2025-02-20, 17:39
Posts: 11
Pry about Widelands
|
Posted at: 2025-02-20, 18:33
Ok, well, the thread ruling the gamelogic hits the roof and slows down very much. i play an 400 x 400 game. Maybe i have to reset some effects. thank you.
Top
Quote
|
|
|
hessenfarmer
Joined: 2014-12-11, 23:16
Posts: 2772
One Elder of Players
Location: Bavaria
|
Posted at: 2025-02-20, 18:35
Hello Crisis,
welcome to our forums. Especially for such questions it would be of great help if you would add some information about the OS you are using and the version of widelands.
How did you obtain the info how much cores Widelands is using?
Top
Quote
|
|
|
Ron_of_Nord
Joined: 2024-04-20, 23:43
Posts: 88
OS: Windows
Version: 1.2.1
Likes to be here
Location: Land_down_under
|
Posted at: Yesterday 05:46
If you are using windows 7 up, the device manager can tell you how many cores a process is using but that function is hard to find and has different ways to get it with each different version of windows. For Windows 10, there is a seperate utility available from microsoft developer that lists how many cores a task is using.I can't remember its name at the moment.
The aussies are coming, ya ho! ya ho!
Top
Quote
|
|
|
hessenfarmer
Joined: 2014-12-11, 23:16
Posts: 2772
One Elder of Players
Location: Bavaria
|
Posted at: Yesterday 08:01
Ron_of_Nord wrote:
If you are using windows 7 up, the device manager can tell you how many cores a process is using but that function is hard to find and has different ways to get it with each different version of windows. For Windows 10, there is a seperate utility available from microsoft developer that lists how many cores a task is using.I can't remember its name at the moment.
well I know that, I just wanted to know what method the initiator of this thread has used.
Top
Quote
|
|
|
Crisis
Topic Opener
Joined: 2025-02-20, 17:39
Posts: 11
Pry about Widelands
|
Posted at: Yesterday 16:30
Hi
i am a native linux usr with mint21.3 on 64 amd ryzen 7 with 16core and 16gb.
i have a icon for the system monitor in my taskbar and i see a large amount off CPU % use hop from one core to another exept when the messengerbox is open, then there is 1 core at 100% and it stays there.
further i think to have read in a tread that multicore is NOT implemented by widelands at all. so the core hopping is what mint21 does. which thread i dont know, i looked for GPU and found about 10 links.
Meanwhile i discovered that the actual play time as given in the Panel is TO SLOW, it TAKES 2 to 3 seconds top count 1 second of play time but well, i have a map off 447x447 and 591 soldiers and the lot of buildings.
very off topic:
i do z80 on zx spectrum https://www.youtube.com/watch?v=0CctEdGIaCo
a small example of my work
; KEY routines GROUPED PER KEYLINE
; BC holds keydata b holds newkey and c holds oldkey as KEY bits %000xxxxx
key12345:
keydat1a push bc ; 11t save KEY DATA
IF calibrate ; recalibrate 1 step at a time
keycal inc hl ; 6t start SYNC DELAY, direct overwritten
ld hl,(bigbel) ; 16t ; hardcoded
bit 0,b ; 8t key '1'
jr nz,kc_0 ; ] 7t
ret nz ; 5t delay
tkc_a equ 6+ 16+8+7 +5
bit 1,b ;| 8t key '2'
jr nz,kc_1 ;| 7t
ret nz ;| 5t
tkc_b equ 8+7+5
jr kc_d ;| 12t
tkc_c equ 12
kc_0 bit 0,c ; ] 8t
jr nz,kc_0c ; ]} 7t
ret nz ; } 5t delay, not a ret
tkc_0a equ 8+7+5
dec hl ; } 6t shorten BIGdelay
jr kc_0d ; } 12t =5+6+12=23
tkc_0b equ 6+12
kc_1 bit 1,c ; 8 key '2'
jr nz,kc_1c ;|] 7
ret nz ; } 5t delay, not a ret
tkc_1a equ 8+7+5
inc hl ; } 6 lengthen BIGdelay
jr writenewcalc ; } 12 =5+6+12=23
tkc_1b equ 6+12
kc_0c inc bc ; 6 delay
inc bc ; 6 delay
tkc_0c equ 6+6
kc_d inc bc ; 6 delay
tkc_d equ 6
kc_0d nop ; 4 delay
nop ; 4 delay
jr writenewcalc ;12 delay
tkc_0d equ 4+4+12
kc_1c inc bc ; 6 delay
jr writenewcalc ;12 delay
tkc_1c equ 6+12
writenewcalc ld (bigbel),hl ;|]} 16
twrcalc equ 16
Top
Quote
|
|
|
Ron_of_Nord
Joined: 2024-04-20, 23:43
Posts: 88
OS: Windows
Version: 1.2.1
Likes to be here
Location: Land_down_under
|
Posted at: Today 04:12
hessenfarmer wrote:
Ron_of_Nord wrote:
If you are using windows 7 up, the device manager can tell you how many cores a process is using but that function is hard to find and has different ways to get it with each different version of windows. For Windows 10, there is a seperate utility available from microsoft developer that lists how many cores a task is using.I can't remember its name at the moment.
well I know that, I just wanted to know what method the initiator of this thread has used.
I meant no insult by my comment, i just wanted to present an option..
I often like to know what core is doing what especially when widelands is running alongside my editor. Whilst I can specify what core the editor uses, I dont set a specific core for widelands. Most of the timw I just let windows handle the details, especially if I am only running my code editor and widelands.
The aussies are coming, ya ho! ya ho!
Top
Quote
|
|
|
Ron_of_Nord
Joined: 2024-04-20, 23:43
Posts: 88
OS: Windows
Version: 1.2.1
Likes to be here
Location: Land_down_under
|
Posted at: Today 04:17
Crisis wrote:
very off topic:
i do z80 on zx spectrum https://www.youtube.com/watch?v=0CctEdGIaCo
a small example of my work
~~~~
; KEY routines GROUPED PER KEYLINE
; BC holds keydata b holds newkey and c holds oldkey as KEY bits %000xxxxx
key12345:
keydat1a push bc ; 11t save KEY DATA
IF calibrate ; recalibrate 1 step at a time
keycal inc hl ; 6t start SYNC DELAY, direct overwritten
ld hl,(bigbel) ; 16t ; hardcoded
bit 0,b ; 8t key '1'
jr nz,kc_0 ; ] 7t
ret nz ; 5t delay
tkc_a equ 6+ 16+8+7 +5
bit 1,b ;| 8t key '2'
jr nz,kc_1 ;| 7t
ret nz ;| 5t
tkc_b equ 8+7+5
jr kc_d ;| 12t
tkc_c equ 12
kc_0 bit 0,c ; ] 8t
jr nz,kc_0c ; ]} 7t
ret nz ; } 5t delay, not a ret
tkc_0a equ 8+7+5
dec hl ; } 6t shorten BIGdelay
jr kc_0d ; } 12t =5+6+12=23
tkc_0b equ 6+12
kc_1 bit 1,c ; 8 key '2'
jr nz,kc_1c ;|] 7
ret nz ; } 5t delay, not a ret
tkc_1a equ 8+7+5
inc hl ; } 6 lengthen BIGdelay
jr writenewcalc ; } 12 =5+6+12=23
tkc_1b equ 6+12
kc_0c inc bc ; 6 delay
inc bc ; 6 delay
tkc_0c equ 6+6
kc_d inc bc ; 6 delay
tkc_d equ 6
kc_0d nop ; 4 delay
nop ; 4 delay
jr writenewcalc ;12 delay
tkc_0d equ 4+4+12
kc_1c inc bc ; 6 delay
jr writenewcalc ;12 delay
tkc_1c equ 6+12
writenewcalc ld (bigbel),hl ;|]} 16
twrcalc equ 16
~~~~
very neat, it has been a long time since I coded for a Z80, these days I code For the Arm v7 and intel x86 series
I wont post an example here mainly because the example I would normally post are far to large for this discussion
Keep up the good work Crisis
+1
The aussies are coming, ya ho! ya ho!
Top
Quote
|