[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-80884":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":8,"htmlUrl":8,"language":9,"languages":8,"totalLinesOfCode":8,"stars":10,"forks":11,"watchers":12,"openIssues":13,"contributorsCount":13,"subscribersCount":13,"size":13,"stars1d":13,"stars7d":13,"stars30d":13,"stars90d":13,"forks30d":13,"starsTrendScore":13,"compositeScore":14,"rankGlobal":8,"rankLanguage":8,"license":15,"archived":16,"fork":16,"defaultBranch":17,"hasWiki":18,"hasPages":16,"topics":19,"createdAt":8,"pushedAt":8,"updatedAt":20,"readmeContent":21,"aiSummary":22,"trendingCount":13,"starSnapshotCount":13,"syncStatus":23,"lastSyncTime":24,"discoverSource":25},80884,"Therm-FM","haiyangxin\u002FTherm-FM","haiyangxin",null,"Python",34,5,1,0,2.33,"Apache License 2.0",false,"main",true,[],"2026-06-12 02:04:08","\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Ftherm-fm-logoNew.png\" width=\"550\" alt=\"Therm-FM Logo\">\n\u003C\u002Fp>\n      \n\u003Ch1 align=\"center\">\n  Therm-FM: Foundation Model is ALL YOU NEED for 3D-ICs Thermal Simulation\n\u003C\u002Fh1>\n  \n\u003Cp align=\"center\">\n  \u003Cb>PDE Foundation Model Adaptation for Steady-State and Transient 3D-IC Thermal Simulation\u003C\u002Fb>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Farxiv.org\u002Fabs\u002F2605.22663\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FarXiv-2605.22663-b31b1b.svg\" alt=\"arXiv\">\n  \u003C\u002Fa>\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDAC-2026%20Accepted-blue\" alt=\"DAC 2026\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FIEEE%20TCAD-Under%20Review-orange\" alt=\"TCAD Under Review\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTask-3D--IC%20Thermal%20Simulation-purple\" alt=\"3D-IC Thermal Simulation\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FFoundation%20Model-Poseidon-green\" alt=\"Poseidon\">\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Farxiv.org\u002Fabs\u002F2605.22663\">\u003Cb>Paper\u003C\u002Fb>\u003C\u002Fa> ·\n  \u003Ca href=\"#code-datasets-model-checkpoints\">\u003Cb>Datasets\u003C\u002Fb>\u003C\u002Fa> ·\n  \u003Ca href=\"#code-datasets-model-checkpoints\">\u003Cb>Checkpoints\u003C\u002Fb>\u003C\u002Fa> ·\n  \u003Ca href=\"#highlights\">\u003Cb>Highlights\u003C\u002Fb>\u003C\u002Fa>\n\u003C\u002Fp>\n\n---  \n\nThis repository contains the official implementation for  \n[**Therm-FM: Foundation Model is ALL YOU NEED for 3D-ICs Thermal Simulation**](https:\u002F\u002Farxiv.org\u002Fabs\u002F2605.22663).\n\n**Therm-FM** adapts a pretrained PDE foundation model to steady-state and transient 3D-IC thermal simulation. It is built on top of [Poseidon](https:\u002F\u002Farxiv.org\u002Fabs\u002F2405.19101) and the `scOT` codebase, with thermal dataset loaders, benchmark configurations, normalization handling, and evaluation scripts for 3D-IC thermal prediction.\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"assets\u002Ftcad-pipeline.png\" width=\"92%\" alt=\"Therm-FM workflow\">\n\u003C\u002Fp>\n\n---\n\n## News\n\n> 💐 **[DAC 2026]** The preliminary conference version, **“From Fluid Dynamics to Chip Design: PDE Foundation Models Address the Data Bottleneck in 3D-IC Thermal Simulation,”** has been accepted by the **63rd ACM\u002FIEEE Design Automation Conference (DAC 2026, CCF-A)** 🎉🎉.\n\n> 🚀 **[May 2026]** We released the arXiv preprint, code, datasets, normalization constants, and model checkpoints for **Therm-FM**.\n\n> ☕️ **[May 2026]** **Therm-FM** is an extended journal version currently under review at **IEEE TCAD**.\n\nCompared with the DAC version, **Therm-FM** extends the study from steady-state thermal prediction to both steady-state and transient simulation. It further expands the benchmark with industrial-scale 3D-IC datasets and releases the datasets and checkpoints. We also introduce a thermal-equivalent model to accelerate data generation, together with a multi-fidelity training strategy to reduce high-fidelity simulation cost. In addition, Therm-FM is, to our knowledge, the first work in ML-based thermal simulation to systematically evaluate cross-chip generalization, which we believe is a key capability for practical thermal modeling.\n\n---\n\n## Highlights\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd>🔥 \u003Cb>Foundation-model adaptation\u003C\u002Fb>\u003C\u002Ftd>\n    \u003Ctd>PDE foundation-model adaptation for 3D-IC thermal simulation.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>⏱️ \u003Cb>Steady + transient\u003C\u002Fb>\u003C\u002Ftd>\n    \u003Ctd>Unified support for steady-state and transient thermal prediction.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>🏭 \u003Cb>Industrial benchmarks\u003C\u002Fb>\u003C\u002Ftd>\n    \u003Ctd>HotSpot and industrial 3D-IC benchmark support.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>⚡ \u003Cb>Multi-fidelity training\u003C\u002Fb>\u003C\u002Ftd>\n    \u003Ctd>Thermal-equivalent multi-fidelity training for reduced high-fidelity data cost.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>📦 \u003Cb>Open resources\u003C\u002Fb>\u003C\u002Ftd>\n    \u003Ctd>Released datasets, normalization constants, and model checkpoints.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>📊 \u003Cb>Thermal metrics\u003C\u002Fb>\u003C\u002Ftd>\n    \u003Ctd>Evaluation scripts with denormalized RMSE, Max, Mean, MAPE, and PAPE metrics.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n---\n\n## Code, Datasets, Model Checkpoints\n\n| Resource | Status | Link |\n|---|---:|---|\n| Code | ✅ Released | This repository |\n| Datasets | ✅ Released | [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Fu\u002F1\u002Ffolders\u002F1WzjpOAgeua03F3iLodHlVbTsRhXn1lMA) |\n| Model Checkpoints | ✅ Released | [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1yMkLwpMDaNrVXxJlzaOLt9n6G_1MFN_I?usp=sharing) |\n## Installation\n\nClone this repository and install it in editable mode:\n\n```bash\npip install -e .\n```\n\nWe recommend using a virtual environment or conda environment. The main dependencies are listed in `pyproject.toml`, including PyTorch, Transformers, Accelerate, h5py, SciPy, and Weights & Biases.\n\nIf you use `accelerate launch` for training, configure Accelerate first:\n\n```bash\naccelerate config\n```\n\n## Repository Structure\n\nThe committed source tree is organized as:\n\n```text\nTherm-FM\u002F\n├── assets\u002F              # paper figures\n├── configs\u002F             # Training\u002Fevaluation YAML configs\n├── scOT\u002F                # Model, trainer, datasets, and evaluation scripts\n├── LICENSE\n├── pyproject.toml\n└── README.md\n```\n\nThe following large directories are not committed to git and should be downloaded separately:\n\n```text\nTherm-FM\u002F\n├── data\u002F                # Extracted datasets\n├── checkpoints\u002F         # Extracted model checkpoints\n```\n\nDetailed dataset and checkpoint archive information is provided in the README files included with the dataset and model releases.\n\n## Datasets\n\nDataset download: [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1WzjpOAgeua03F3iLodHlVbTsRhXn1lMA?usp=sharing)\n\nAfter downloading and extracting the dataset archives, the expected layout is:\n\n```text\ndata\u002F\n├── thermal_steady\u002F\n│   ├── HS_SC_refine1\u002F\n│   ├── HS_SC_refine2\u002F\n│   ├── HS_QC_refine1\u002F\n│   ├── HS_QC_refine2\u002F\n│   ├── HS_OC_refine1\u002F\n│   ├── HS_OC_refine2\u002F\n│   ├── IND_8C\u002F\n│   └── IND_32C\u002F\n├── thermal_transient\u002F\n│   ├── HS_SC_refine2\u002F\n│   ├── HS_QC_refine2\u002F\n│   └── HS_OC_refine2\u002F\n├── normalization_constants\u002F\n└── README.md\n```\n\nEach benchmark case contains `input.mat` and `output.mat`. The dataset key inside each `.mat` file is `data`.\n\nThe dataset release also includes precomputed normalization constants. During training and evaluation, pass them with `--stats_json` when you want to reproduce the released normalization exactly. If `--stats_json` is not provided, the code recomputes normalization constants from the current training dataset.\n\n## Model Checkpoints\n\nModel checkpoint download: [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1yMkLwpMDaNrVXxJlzaOLt9n6G_1MFN_I?usp=sharing)\n\nAfter downloading and extracting the model archives, the expected layout is:\n\n```text\ncheckpoints\u002F\n├── thermal_steady\u002F\n│   ├── HS_SC_refine1\u002F\n│   ├── HS_SC_refine2\u002F\n│   ├── HS_QC_refine1\u002F\n│   ├── HS_QC_refine2\u002F\n│   ├── HS_OC_refine1\u002F\n│   ├── HS_OC_refine2\u002F\n│   ├── IND_8C\u002F\n│   └── IND_32C\u002F\n├── thermal_transient\u002F\n│    ├── HS_SC_refine2\u002F\n│    ├── HS_QC_refine2\u002F\n│    └── HS_OC_refine2\u002F\n└── README.md\n```\n\nEach benchmark directory contains `model_T`, `model_B`, and `model_L` subdirectories. Each model directory contains the minimal files required for evaluation and inference:\n\n```text\nconfig.json\npytorch_model.bin\nnormalization_constants.json\n```\n\nThe model scales are:\n\n| Model | Size |\n|---|---:|\n| `model_T` | 21M parameters |\n| `model_B` | 158M parameters |\n| `model_L` | 629M parameters |\n\n## Evaluation\n\nUse `scOT\u002Fevaluate.py` for steady-state thermal benchmarks:\n\n```bash\npython scOT\u002Fevaluate.py \\\n  --model_path checkpoints\u002Fthermal_steady\u002FHS_SC_refine2\u002Fmodel_T \\\n  --config configs\u002Frun_thermal_steady_T.yaml \\\n  --data_path data\u002Fthermal_steady\u002FHS_SC_refine2 \\\n  --output_dir eval_outputs\u002Fthermal_steady\u002FHS_SC_refine2\u002Fmodel_T \\\n  --only_test\n```\n\nUse `scOT\u002Fevaluate_transient.py` for transient thermal benchmarks:\n\n```bash\npython scOT\u002Fevaluate_transient.py \\\n  --model_path checkpoints\u002Fthermal_transient\u002FHS_SC_refine2\u002Fmodel_T \\\n  --config configs\u002Frun_thermal_transient_T.yaml \\\n  --data_path data\u002Fthermal_transient\u002FHS_SC_refine2 \\\n  --output_dir eval_outputs\u002Fthermal_transient\u002FHS_SC_refine2\u002Fmodel_T \\\n  --only_test\n```\n\nThe evaluation scripts automatically load `\u003Cmodel_path>\u002Fnormalization_constants.json` for thermal datasets. You can override this with:\n\n```bash\n--stats_json path\u002Fto\u002Fnormalization_constants.json\n```\n\nMatch `model_T`, `model_B`, or `model_L` with the corresponding config file: `run_thermal_*_T.yaml`, `run_thermal_*_B.yaml`, or `run_thermal_*_L.yaml`.\n\n## Training and Fine-tuning\n\nTherm-FM uses the same training entry point as Poseidon\u002FscOT, with thermal-specific dataset loaders and configs.\n\nTo train Therm-FM from the pretrained PDE foundation model, download the original Poseidon pretrained models separately from the [Poseidon Hugging Face collection](https:\u002F\u002Fhuggingface.co\u002Fcollections\u002Fcamlab-ethz\u002Fposeidon). They are not included in this repository or in the Therm-FM checkpoint release. After downloading, place them under `checkpoints\u002Fpretrained\u002F`:\n\n```text\ncheckpoints\u002F\n└── pretrained\u002F\n    ├── poseidon-T\u002F\n    ├── poseidon-B\u002F\n    └── poseidon-L\u002F\n```\n\nUse the matching Poseidon scale for each Therm-FM config: `poseidon-T` with `run_thermal_*_T.yaml`, `poseidon-B` with `run_thermal_*_B.yaml`, and `poseidon-L` with `run_thermal_*_L.yaml`.\n\nExample steady-state training command:\n\n```bash\naccelerate launch scOT\u002Ftrain.py \\\n  --config configs\u002Frun_thermal_steady_T.yaml \\\n  --data_path data\u002Fthermal_steady\u002FHS_SC_refine2 \\\n  --checkpoint_path checkpoints \\\n  --finetune_from checkpoints\u002Fpretrained\u002Fposeidon-T \\\n  --replace_embedding_recovery \\\n  --wandb_project_name Therm-FM \\\n  --wandb_run_name HS_SC_refine2_T\n```\n\nExample with a released normalization file:\n\n```bash\naccelerate launch scOT\u002Ftrain.py \\\n  --config configs\u002Frun_thermal_transient_T.yaml \\\n  --data_path data\u002Fthermal_transient\u002FHS_OC_refine2 \\\n  --checkpoint_path checkpoints \\\n  --finetune_from checkpoints\u002Fpretrained\u002Fposeidon-T \\\n  --replace_embedding_recovery \\\n  --wandb_project_name Therm-FM \\\n  --wandb_run_name HS_OC_refine2_T \\\n  --stats_json data\u002Fnormalization_constants\u002Fthermal_transient\u002FHS_OC_normalization_constants.json\n```\n\nFor all available options:\n\n```bash\naccelerate launch scOT\u002Ftrain.py --help\n```\n\n## Configurations\n\nThe repository provides model-scale-specific configs:\n\n```text\nconfigs\u002Frun_thermal_steady_T.yaml\nconfigs\u002Frun_thermal_steady_B.yaml\nconfigs\u002Frun_thermal_steady_L.yaml\nconfigs\u002Frun_thermal_transient_T.yaml\nconfigs\u002Frun_thermal_transient_B.yaml\nconfigs\u002Frun_thermal_transient_L.yaml\n```\n\nThe default thermal split is controlled by `train_ratio=0.8`, where 80% of samples are used for train plus validation and 20% are used for testing. The validation set is 10% of the train plus validation portion.\n\n## Results\n\nTherm-FM consistently improves steady-state and transient thermal prediction accuracy across HotSpot and industrial 3D-IC benchmarks. Please refer to the paper for the complete quantitative comparison against FNO, U-FNO, DeepOHeat, ARO, SAU-FNO, and T-Fusion.\n\n![Steady-state results](assets\u002Fsteady-results.png)\n\n![Transient results](assets\u002Ftransient-result.png)\n\n## Relationship to Poseidon\n\nTherm-FM is built upon Poseidon and the `scOT` framework. We adapt the pretrained PDE foundation-model backbone to 3D-IC thermal simulation by adding thermal steady\u002Ftransient dataset loaders, benchmark configs, normalization utilities, and denormalized thermal evaluation metrics.\n\nIf you use Therm-FM, please also consider citing Poseidon.\n\n## Citation\n\nIf you use this code, datasets, or model checkpoints, please cite:\n\n```bibtex\n@misc{huang2026thermfm,\n  title={Therm-FM: Foundation Model is ALL YOU NEED for 3D-ICs Thermal Simulation},\n  author={Zhen Huang and Haiyang Xin and Wenkai Yang and Yangbo Wei and Zhiping Yu and Yu Zhang and Wei W. Xing and Ting-Jung Lin and Lei He},\n  year={2026},\n  eprint={2605.22663},\n  archivePrefix={arXiv},\n  primaryClass={cs.LG}\n}\n```\n\nPlease also cite Poseidon:\n\n```bibtex\n@misc{herde2024poseidon,\n  title={Poseidon: Efficient Foundation Models for PDEs},\n  author={Maximilian Herde and Bogdan Raonić and Tobias Rohner and Roger Käppeli and Roberto Molinaro and Emmanuel de Bézenac and Siddhartha Mishra},\n  year={2024},\n  eprint={2405.19101},\n  archivePrefix={arXiv},\n  primaryClass={cs.LG}\n}\n```\n\n## Acknowledgements\n\nThis repository is based on Poseidon\u002FscOT. We thank the Poseidon authors for releasing their code and pretrained PDE foundation models. We also acknowledge the open-source HotSpot simulator and prior learning-based thermal simulation baselines used for comparison in the paper.\n\n## License\n\nThis project is released under the MIT License. See [LICENSE](LICENSE) for details.\n","Therm-FM 是一个用于3D-IC热模拟的项目，基于预训练的偏微分方程（PDE）基础模型来适应稳态和瞬态3D-IC热模拟。其核心技术特点包括使用Poseidon框架及scOT代码库，提供热数据集加载器、基准配置、归一化处理和评估脚本等功能。此外，该项目还引入了热等效模型以加速数据生成，并采用多保真度训练策略降低高保真度模拟的成本。适用于需要精确且高效进行3D集成电路热分析的设计与研究场景，特别是在解决数据瓶颈问题时展现出优越性能。",2,"2026-06-01 03:52:47","CREATED_QUERY"]