Det är utmanande att samtidigt uppnå flerkärnig skalbarhet och hög diskgenomströmning i ett filsystem. Till exempel, även för pendlande åtgärder som att skapa olika filer i samma katalog, nuvarande filsystem införa cache-line konflikter när du uppdaterar en in-minne kopia av den pådisk katalogblock, vilket begränsar skalbarhet. ScaleFS är en ny filsystemdesign som kopplar bort in-minnesfilsystemet från det on-diska filsystemet med hjälp av operationsloggar per kärna. Denna design underlättar användningen av mycket samtidiga datastrukturer för den inbyggda representationen, vilket gör det möjligt för pendlande operationer att fortsätta utan cachekonflikter och därmed skala perfekt. ScaleFS loggar transaktioner i en per-core logg så att det kan fördröja spridningen av uppdateringar till disk representationen (och de cache-line konflikter som är inblandade i att göra det) tills en fsync. Den fsync anrop slår samman per-core loggar och tillämpar verksamheten på disk. ScaleFS använder flera tekniker för att utföra sammanslagningen på rätt sätt samtidigt som man uppnår god prestanda: tidsstämplade linjäriseringspunkter för att beställa uppdateringar utan att införa cache-line konflikter, absorption av loggade operationer och beroendespårning över operationer. Experiment med en prototyp av ScaleFS visar att dess implementering inte har några cachekonflikter för 99% av testfall av pendlande operationer som genereras av Commuter, skalar väl på en 80-kärnig maskin, och ger on-disk prestanda som är jämförbar med Linux ext4.
McoreFS REF använder per-core loggar och drift commutativitet egenskaper för att förbättra flerkärnig filsystem skalbarhet.
Scaling a file system to many cores using an operation log
{'venue': "SOSP '17", 'journal': None, 'mag_field_of_study': ['Computer Science']}