Alltid svårt att definiera "bättre" på något så komplicerat som en scheduler och vad som är bättre eller sämre för dig eller mig, men en större sak är att schedulern i Windows gillar att fördela lasten jämt medan Linux gillar att hålla kvar en tråd på samma kärna så länge som möjligt (vilket är bättre då den kärna som du körde på sist ju har kvar din data i sin cache).
Simpelt test för detta är att dra upp t.ex 7-zip och så köra dens inbyggda benchmark och så sätta antalet trådar till 1, på Windows så kommer du att se hur lasten mellan de olika kärnorna hoppar runt så att du t.ex med en 3-kärning CPU (jag testade detta precis med en virtuell instans av W10) så får du runt 33% last på alla kärnor medan när jag kör samma test i Linux så får jag 100% last på en av mina kärnor under tiden som benchmarken körs.
Troligtvis just den skillnaden som gör att W10 vinner vissa benchmarks över Linux på Alder Lake trotts att W10 också saknar stöd för ThreadDirector då om en tråd råkar trilla in på en e-core på Linux så kommer den ju med stor sannolikhet att ligga kvar där och få sämre prestanda medan W10 pga ren bonnatur när den hoppar runt kan råka köra mestadels på p-coren.