Guild icon
wafer.space Community
Information / general / Is the DRC using KLayout supposed to
Between 03/31/2026 23:59 and 05/01/2026 00:00
Avatar
Leo Moser (mole99) 04/25/2026 08:15
08:15
Yes, KLayout DRC takes a while to run. KLayout can make use of multiple threads, but only in certain situations. There is a run_drc.py script (not sure if its still included in the ws PDK fork) that splits the DRC deck into individual rule decks and runs them in separate processes. This is a naive implementation and has many drawbacks. We are currently working on a substantially better implementation that uses only KLayout and Ruby scripting. @Clyde Laforge is spearheading this work. It should be ready to try in ~1/2 weeks, initially with just one worker as before, but with the option to increase the number of workers that run in parallel.
Avatar
The Computer Guy 04/25/2026 18:03
Great, it would be nice if it worked better with 128 cores lol
Avatar
Clyde Laforge 04/30/2026 19:36
Hey, so the merge request is pretty much ready, and it would be nice to have people try out the new DRC approach. It only work with cli for now. To try it out, clone my repo and branch git clone -b drc_structure git@github.com:Scafir/globalfoundries-pdk-libs-gf180mcu_fd_pv.git and you can run it with klayout -b -r globalfoundries-pdk-libs-gf180mcu_fd_pv/klayout/drc/gf180mcu_drc.rb -rd help=true You probably want -rd workers=<absurd_amount> -rd threads=1 . I would be very interested to hear about total runtime and amount of RAM usage (compared to whatever method you are currently using run_drc.py , gui, ...).
Exported 4 message(s)
Timezone: UTC+0