Systems and methods for thermal modeling of nanoelectronics
The JAX-BTE solver addresses computational inefficiencies in phonon BTE solvers by employing GPU acceleration and differentiable programming, enhancing thermal modeling speed and accuracy in nanoscale electronics, and enabling inverse design for integrated circuits.
Patent Information
- Application Number
- PCT/US2025/036027
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-02
- Filing Date
- 2025-07-01
- Publication Date
- 2026-01-08
AI Technical Summary
Traditional numerical solvers for phonon Boltzmann transport equation (BTE) are computationally inefficient and limited to forward simulations, failing to address non-diffusive transport in nanoscale electronics, which hinders accurate thermal modeling and inverse design in integrated circuits.
A high-performance, differentiable GPU-accelerated JAX-BTE solver using JAX library for efficient solution of non-gray phonon BTE, enabling both forward and inverse thermal modeling through parallel computing and differentiable programming, supporting gradient tracking and end-to-end deep learning.
The JAX-BTE solver significantly speeds up thermal modeling by 10 times compared to state-of-the-art solvers, providing accurate temperature and heat flux predictions, and facilitates inverse learning for optimizing semiconductor properties.
Smart Images

Figure US2025036027_08012026_PF_FP_ABST
Abstract
Description
SYSTEMS AND METHODS FOR THERMAL MODELING OF NANOELECTRONICSCross-Reference To Related Applications
[0001] This application claims priority to U.S. Provisional Application Number 63 / 666,818 filed on July 2, 2024 and entitled “Systems and methods for thermal modeling of nanoelectronics” and is herein incorporated by reference in its entirety.Government License Rights
[0002] This invention was made with government support under HR0011-23-9-0112 awarded by the Defense Advanced Research Projects Agency (DARPA). The government has certain rights in the invention.Technical Field
[0003] The present description relates to numerical simulation of nanoscale electronics, and more particularly to thermal modeling of nanoscale electronics.Background
[0004] Numerical simulation of nanoscale thermal transport plays a crucial role in understanding thermal management in integrated circuits. Up to this date, Fourier's law with effective thermal conductivity (TC) calibrated against phonon Boltzmann transport equation (BTE) simulations of specific transistor geometries, represents the state-of-the-art methodologies for addressing the circuit-level thermal transport. However, the temperature distribution within the transistor remains unknown, limited by the computational challenges of modeling non-diffusive transport, i.e. ballistic transport, across multiple spatial scales from transistor to circuit.
[0005] Phonon BTE is a non-linear partial differential equation (PDE) with very high dimensions, which is very import for the purpose of semiconductor thermal analysis in nanoscale system size. Traditional numerical solvers are very time-consuming for solver phonon BTE. Also, traditional numerical solvers only support forward simulation and cannot support inverse design given data or desired semiconductor thermal properties.
[0006] As such, there is an identifiable desire for improvements in the features in or associated with thermal modeling of nanoscale electronics.Summary
[0007] In some aspects, the techniques described herein relate to a method for estimating a physical parameter in a spatial object, the method including: obtaining, by a computing device, at least one property of the spatial object; obtaining, by the computing device, a mesh representing a topology of the spatial object; assembling, by the computing device, a first tensor based on the at least one property and the mesh, the first tensor having at least a first and a second component representing a first and a second point in the mesh, respectively; executing simultaneously, by a first and a second processing unit of the computing device, a predetermined function on the first and the second component, respectively; and generating, by the computing device, a first and a second estimation of the physical parameter at the first and second point, respectively, from executing the predetermined function on the first and the second component, respectively.
[0008] In some aspects, the techniques described herein relate to a method, wherein the physical parameter is temperature or heat flux in the spatial object.
[0009] In some aspects, the techniques described herein relate to a method, wherein the predetermined function involves Boltzmann transport equation (BTE).
[0010] In some aspects, the techniques described herein relate to a method, wherein executing the predetermined function involves differentiable programming to solve the BTE.
[0011] In some aspects, the techniques described herein relate to a method, wherein the at least one property includes at least one phonon property of the spatial object.
[0012] In some aspects, the techniques described herein relate to a method, wherein assembling the first tensor includes discretizing the at least one phonon property in frequency and polarization domains.
[0013] In some aspects, the techniques described herein relate to a method, wherein the at least one property includes a trainable parameter associated with the spatial object, the trainable parameter being selected from the group consisting of a relaxation time, a scattering rate, a non-equilibrium distribution function, an effective mass, a temperature, an electric field and a magnetic field .
[0014] In some aspects, the techniques described herein relate to a method, wherein the at least one property includes a boundary condition of the spatial object, the boundary conditionbeing selected from the group consisting of isothermal boundary condition, diffusely reflecting boundary condition and specularly reflecting boundary condition.
[0015] In some aspects, the techniques described herein relate to a method, wherein the first component includes a relationship between the first and the second point in the mesh.
[0016] In some aspects, the techniques described herein relate to a method, further including: updating, by the computing device, the first tensor with the first and the second estimation to form a second tensor; executing, by the computing device, the predetermined function on the second tensor; and generating, by the computing device, a third and fourth estimation of the physical parameter at the first and the second point, respectively, from executing the predetermined function on the second tensor.
[0017] In some aspects, the techniques described herein relate to a method, further including: calculating, by the computing device, a difference between the first and third estimation of the physical parameter; and updating, by the computing device, the second tensor with the third and the fourth estimation to form a third tensor if the difference is larger than a predetermined threshold; and executing, by the computing device, the predetermined function on the third tensor.
[0018] In some aspects, the techniques described herein relate to a method, further including: comparing, by the computing device, the first estimation and an empirical measurement of the physical parameter; updating, by the computing device, the first tensor with the first and second estimation of the physical parameter to form a second tensor if a result of comparing the first estimation and the empirical measurement is above a predetermined threshold; and executing, by the computing device, the predetermined function on the second tensor.
[0019] In some aspects, the techniques described herein relate to a method, wherein comparing the first estimation and the empirical measurement of the physical parameter includes inputting the first estimation and the empirical measurement of the physical parameter to a loss function, the loss function including at least a term for: ensuring that the estimation of the physical parameter meet a predetermined boundary condition, ensuring that the estimation of the physical parameter matches an initial condition, or preventing overfitting the estimation to the empirical measurement of the physical parameter.
[0020] In some aspects, the techniques described herein relate to a method, further including providing a heat source distribution to the predetermined function for the execution.
[0021] In some aspects, the techniques described herein relate to a system for estimating a physical parameter in a spatial object, the system including: a computing device having a first and a second processing unit; and a memory in communication with the computing device and storing instructions that, when executed by the computing device, cause the computing device to: obtain at least one property of the spatial object; obtain a mesh representing a topology of the spatial object; assemble a first tensor based on the at least one property and the mesh, the first tensor having at least a first and a second component representing a first and a second point in the mesh, respectively; execute, simultaneously by the first and the second processing unit of the computing device, a predetermined function on the first and the second component, respectively; and generate a first and a second estimation of the physical parameter at the first and second point, respectively, from executing the predetermined function on the first and the second component, respectively.
[0022] In some aspects, the techniques described herein relate to a system, wherein the physical parameter is temperature or heat flux in the spatial object.
[0023] In some aspects, the techniques described herein relate to a system, wherein the predetermined function involves Boltzmann transport equation (BTE).
[0024] In some aspects, the techniques described herein relate to a system, wherein executing the predetermined function involves differentiable programming to solve the BTE.
[0025] In some aspects, the techniques described herein relate to a system, wherein the at least one property includes at least one phonon property of the spatial object.
[0026] In some aspects, the techniques described herein relate to a system, wherein assembling the first tensor includes discretizing the at least one phonon property in frequency and polarization domains.Brief Description of the Drawings
[0027] FIG. 1 is a flowchart illustrating a process for solving the phonon BTE according embodiments of the present disclosure.
[0028] FIG. 2 is a block diagram illustrating a workflow reflecting an exemplary JAX-BTE solver according to embodiments of the present disclosure.
[0029] FIG. 3 is a flowchart illustrating an iterative process of the solver shown in FIG. 2 according to embodiments of the present disclosure.
[0030] FIG. 4 is a block diagram illustrating a forward-and-inverse modeling workflow according to embodiments of the present disclosure.
[0031] FIG. 5 is a block diagram illustrating an architecture of the JAX-BTE solver shown in FIG. 4 according to embodiments of the present disclosure.
[0032] FIG. 6 is a flowchart illustrating a fully vectorized solver process according to embodiments of the present disclosure.
[0033] FIG. 7 is a flowchart illustrating a thermal modeling process according to embodiments of the present disclosure.
[0034] FIGs. 8A and 8B illustrate a modeling performance of a ID cross-plane according to embodiments of the present disclosure.
[0035] FIGs. 9A-9C illustrate a modeling performance of a long-based transistor according to embodiments of the present disclosure.
[0036] FIGs. 10A-10C illustrate a modeling performance of a short-based FinFet transistor according to embodiments of the present disclosure.
[0037] FIGs. 11A-11C are plots showing results of inverse learning for a system size of the ID thin film shown in FIG. 8A according to embodiments of the present disclosure.
[0038] FIGs. 12A-12C illustrate results of inverse learning for the heat source intensity of a 2D square domain according to embodiments of the present disclosure.
[0039] FIG. 13 is a plot illustrating scalability comparison between JAX-BTE and GiftBTE across different problem sizes.
[0040] FIG. 14 is a bar chart illustrating a performance comparison.
[0041] FIG. 15 is a block diagram of an exemplary computing device.Detailed Description
[0042] The present disclosure provides for a high-performance, reliable, differentiable and GPU accelerated numerical solver for the phonon Boltzmann Transport Equation (BTE). The present disclosure is very important in, for example, semiconductor thermal analysis.
[0043] The following description of example methods and apparatus is not intended to limit the scope of the description to the precise form or forms detailed herein. Instead, the following description is intended to be illustrative so that others may follow its teachings.
[0044] The present disclosure introduces a fully differentiable GPU- accelerated Python package utilizing a JAX library for efficiently solving non-gray phonon BTE (a JAX-BTE solver). The JAX library is a Python library designed for high-performance numerical computing and machine learning. The JAX offers array-oriented computation by providing an interface for array operations. The JAX library can automatically compute derivatives of functions, which is essential for machine learning. The JAX perform just-in-time (JIT) compilation using accelerated linear algebra (XLA) to compile and optimized code for execution on central processing units (CPUs), graphics processing units (GPUs) and tensor processing units (TPUs). The JAX library supports parallel computing on multiple accelerators using pmap which is a function used for parallelizing computations across multiple devices, such as GPUs and TPUs. The pmap allows user to distribute the computation of a function over multiple devices, enabling efficient parallel processing. Key features of the pmap includes parallel execution, automatic data sharding and synchronization. The parallel execution refers to that the pmap runs the same function on different slices of the input data across multiple devices simultaneously. The automatic data sharding refers to that the pmap automatically splits the input data and distributes the input data across the available devices. The synchronization refers to that the pmap ensures that all devices are synchronized during the computation.
[0045] The JAX-BTE solver also allows end-to-end, sequence-to-sequence deep learning (DL) accelerated simulation of complex multiscale ethermal transport, leveraging DL and numerical methods. The present approach is essentially a differentiable numerical solver based on discrete ordinates method (DOM), which can simulate both steady-state and transient conditions. The entire solver is constructed using differentiable programming in JAX, resulting in a significant speedup compared to conventional numerical BTE solvers, thanks to GPU acceleration and the potential coupling with deep neural networks through automatic differentiation. The present method allows the integration of known BTE physics with DL techniques, making it more data efficient and generalizable compared to purely black-box, data-driven DL models.
[0046] The present JAX-BTE solver is a high-performance differentiable Finite Volume Method (FVM) Python numerical solver, which utilizes advanced vectorization techniques to solve phonon BTE. By utilizing vectorization, the present disclosure can handle each dimension simultaneously on a GPU, significantly enhancing computational performance. Furthermore, the disclosed JAX-BTE solver supports gradient tracking, which is crucial forinverse learning. This capability allows users to perform end-to-end optimization efficiently, making it possible to infer underlying parameters or structures directly from data.
[0047] The systems and methods disclosure herein are significant faster (e.g., 10 times faster) than the current state-of-the-art solver using message passing interface (MPI) parallel strategy. Additionally, the present systems and methods are a first differentiable solver for the phonon BTE, which support learning from data.
[0048] Although the present disclose uses JAX framework as an example for solving the phonon BTE, other parallel processing computing frameworks may also be utilized to solve the phonon BTE for modeling temperature and heat flux in spatial objects according to embodiments of the present disclosure.
[0049] Phonons behave like quantum-mechanical particles and carries heat. Consider phonons as particles with energy ha> and momentum hk, phonon particle distribution function f(x, s,p, t) describes the number of phonons at time t at position x with direction s. Boltzmann transport equation (BTE) tracks the change in function / (%, s,p, t) within a given domain. Since each phonon carries energy, the particle distribution function can also be converted to an energy density distribution function:
[0050] The phonon BTE describes the evolution of phonon distributions over time in a system. For a system with a heat source at steady state, the energy-based phonon BTE under the single mode relaxation time approximation can be expressed as:whereas expressed in Eq. 1, is the phonon energy distribution function, which depends on spatial position x, directional unit vector s, phonon frequency m, and phonon branch p. v( ), p) is the group velocity, and r(m, p) is the relaxation time, which can be obtained for all phonons at different m and p using first principles density functional theory (DFT) calculations. Q represents the volumetric heat source intensity, and e°(x) is the equilibrium part of the distribution function. According to energy conservation, e° is related to e through following equations:where C (m, p) is the volumetric heat capacity for a given phonon mode, TLis the lattice temperature, and (1 is the spatial object angle in spherical coordinates. The heat flux can be calculated by:
[0051] For the JAX-BTE solver, three built-in boundary conditions commonly used in phonon BTE simulations are implements. These boundary conditions are:
[0052] Isothermal Boundary: This boundary absorbs all incoming phonons and emits phonons in thermal equilibrium at a specific temperature T back into the simulation domain. This can be described as: e(xb,s,a),p) = — T,s ■ nb< 0 (Eq. 6) 47TWhere xbis the position at the boundary and nbis the outward-pointing normal unit vector at the boundary.
[0053] Diffusely Reflecting Boundary: This adiabatic boundary reflects phonons leaving the simulation domain with equal probability in all possible directions pointing into the simulation domain. According to energy conservation, it is represented as:(Eq. 7) where s' are all angles that point out of the domain and the use of this boundary condition implies a rough surface.
[0054] Specularly Reflecting Boundary: Another adiabatic boundary condition, specular reflecting boundaries assumes phonons reflects as if from a mirror, where the phonon energy along the reflected angle is equal to that of the incident angle:where s' = s — 2nb(s ■ nb) is the reflected phonon direction. This boundary condition assumes a perfectly smooth surface.
[0055] To accurately capturing nanoscale thermal transport phenomena, embodiments of the present disclosure employ non-gray models which take different phonon bands intoconsideration, i.e., band discretization. For discretizing phonon energy in the frequency and polarization domains, the wave vector space is divided into n equidistant intervals [ / Co, . . . , Kn, referred to as bands, where Kois the minimum wave vector and Knis the maximum wave vector. For each wave vector interval, phonon properties such as heat capacity, relaxation time, and group velocity are calculated by weighted averaging these properties within the interval (i.e., within each band). Specifically, for each band, the representative phonon properties are given by:where A is the index of the phonon band and k is the wave vector. The original integral equation of frequency is transformed into a summation form:
[0056] To accurately model phonon transport, embodiments of the present disclosure also employs angle discretization in the phonon BTE. The angle discretization transforms the integration over directional space into a weighted summation:here 0 is the polar angle and cp is the azimuthal angle, a is the index for the sampled direction sa= (cos 0 , sin 0 cos <p , sin 0 sin <p). The weights (30aandas well as their corresponding directions, are calculated using Gauss-Legendre quadrature to achieve high numerical accuracy with reduced computational cost. The final weight of the phonon energy in direction a and band A, ea^, is given
[0057] After applying band and angular discretization, the phonon BTE in its steady-state form becomes:where A is the index of the band and a is the angle index. The equilibrium energy is represented by:
[0058] The finite volume method (FVM) is employed to spatially discretize the equation. Namely, by dividing the computational domain into discrete control volumes (cells), and the equation is solved by balancing the energy fluxes across the boundaries of each control volume. The governing equation is integrated over the volume of each cell, transforming the spatial derivative into surface integrals across the cell faces. For a control volume i, the discretized form of the BTE becomes,where V is the volume of the cell i and N (i) is the list of neighboring cells of cellis the area of the interface between cell i and cell j,is the outward-facing normal vector at the interface,is the phonon energy at the interface, which is computed using upwind scheme to ensure numerical stability,where e' and Ve' are the phonon energy density and its gradient in the cell from the upwind direction (s • n > 0), while d' is the vector from the center of the upwind cell to the center of interface ij. The gradient Ve' is numerically computed using the Green-Gauss method.
[0059] Directly solving the full system of algebraic equations (e.g., Eq. 18) is computationally challenging and unstable due to the presence of the equilibrium energy term, which is a function of the integral of the phonon energy distribution across all directions and bands. To address this, the system according to embodiment of the present disclosure is solved iteratively with pseudo-time stepping. Namely, at each iteration (i.e., pseudo-time step) n + 1, the phonon energy distribution is updated based on the changes (or increments) from the previous iteration n. As a result, Eq. 18 can be reformulated in its incremental form,Where Ae"+ 1= e"+ 1— e” is the incremental update of phonon energy density between iterations. This incremental form allows for gradual convergence towards the steady-state solution, ensuring numerical stability and avoiding sharp changes in the solution.
[0060] Once the element- wise algebraic equations (e.g., Eq. 20) for the discretized BTE have been established, in embodiments, these equations are expressed in matrix form. Each cellwise equation can be represented as a linear combination of the unknown phonon energy difference Ae” , leading to a system of linear equations for all cells under each band- angle combination. This matrix representation facilitates the use of GPU computing, enabling batch processing of the equations and significantly accelerating the simulation. Specifically, the matrix form is expressed as follows:Where Aais the stiffness matrix for angle a and band , which has the dimensions of NcX Nc, with Ncbeing the total number of cells. The diagonal and off-diagonal elements of the matrix are given by:where H (■) is the Heaviside step function. The right-side vector bnis expressed as:en’°+ Qi, (Eq. 23) Ti,A
[0061] In Eq. 22-23, the stiffness matrix Aadepends only on material properties and mesh topology, and thus remains unchanged throughout the simulation process. The vectorhowever, needs to be re-evaluated at each iteration after updating the phonon energy density.To solve the linear system, the bi-conjugate gradient (Bi-CG) method is exemplarily employed with a Jacobi preconditioner to improve convergence.
[0062] FIG. 1 is a flowchart illustrating a process 100 for solving the phonon BTE according embodiments of the present disclosure. The process 100 includes exemplary steps 110-150 as described below.
[0063] In step 110, the process 100 loads a mesh, phonon properties and other needed data into a JAX-BTE solver. In embodiments, the mesh represents a spatial domain of the simulated material. The mesh accurately captures the geometry of the material. Phonons are quantized units of vibrational energy arising from oscillating atoms within a crystal lattice. Phonons play a crucial role in various physical properties of materials. Some key properties of phonons include energy and momentum, type of phonons, e.g., acoustic phonons and optical phonons, thermal conductivity, superconductivity, and wave-particle duality. The energy and momentum refer to a fact that phonons carry discrete amounts of energy and momentum, similar to photons in electromagnetic waves. Acoustic phonons refer to low- energy phonons that propagate sound waves through the material. The optical phonons refer to higher-energy phonons that involve the relative motion of atoms within the unit cell. The thermal conductivity refers to a fact that phonons are the primary carriers of heat in non- metallic spatial objects such as semiconductor materials. Phonons’ interactions and scattering determine the thermal conductivity of the material. The superconductivity refers to a fact that phonons play a role in the phenomenon of superconductivity, where phonons mediate interactions between electrons, allowing them to move without resistance at low temperatures. The wave-particle duality refers to a fact that phonons exhibit both wave-like and particle-like properties, reflecting the principles of quantum mechanics.
[0064] In embodiments, other needed data that is loaded into the JAX-BTE solver includes, for instance, a heat source distribution if users intend to simulate BTE with a heat source.
[0065] In step 120, the process 100 assembles a matrix to solve linear equation system in the JAX-BTE solver. Assembling the matrix involves calculating each element of the matrix based on the phonon energy, the topology of the mesh, and the boundary conditions. Each element of the matrix reflects the interactions and relationships between different points in the mesh, considering the phonon energy at those points and how the points in the mesh are connected. The boundary conditions are also incorporated to ensure the system accurately represents the physical scenario.
[0066] In step 130, the process 100 updates phonon energy at each point of the mesh.
[0067] In step 140, the process 100 determines if a residual is below a predetermined threshold. In embodiments, the JAX-BTE solver uses iterative methods to get the correct phonon energy. The computation starts from initial phonon energy at each point calculated from the user-input initial temperature distribution. Based on the current phonon energy at each point, the JAX-BTE solver solves a linear system to obtain a change in phonon energy at each point and then updates the phonon energy. This process is repeated, solving a new system each time, until the phonon energy converges. The JAX-BTE solver tries to solve a linear equation system that can return solutions with values of the variables that satisfy the equations. The residual is defined as the difference between the solutions from two consecutive iterations. The residual measures the change in the solution between iterations, indicating how much the solution has updated. As the iterations proceed and the solution converges, the residual decreases, approaching zero when the solution stabilizes. In embodiments, the predetermined threshold can be a criterion for the temperature and heat flux solution set by users. If the residual falls below the predetermined threshold, the JAX- BTE solver will stop, and the process 100 will proceed to step 150 by outputting the solution. The step 140 allows users to control the convergence tolerance and decide when the solution is sufficiently accurate.
[0068] If the residual is above the predetermined threshold, the process 100 returns to step 120 to repeat the process of solving the linear equation system with current phonon energy at each point of the mesh.
[0069] Accordingly, the present disclosure provides an advanced numerical solver designed to solve phonon BTE quickly and efficiently. The systems and methods use powerful vectorization techniques to solve each dimension simultaneously with the help of GPU. This parallel processing significantly speeds up the calculations. Additionally, the solver can automatically track changes and adjustments in the calculations, which is particularly useful for optimizing and improving the accuracy of models based on real- world data. This feature is essential for applications where learning from data and making precise predictions or adjustments is crucial, such as in micro structure optimization of integrated circuit (IC) chips. Hence, the present solver offers a faster, more efficient way to tackle complex problems and optimize solutions, making it a valuable tool for a wide range of industries.
[0070] FIG. 2 is a block diagram illustrating a workflow 200 reflecting an exemplary JAX- BTE solver according to embodiments of the present disclosure. The workflow 200 includes an input stage 210 providing data to a solver stage 240 which outputs to a result stage 250.
[0071] In embodiments, the input stage 210 includes phonon properties 223 and geometry data 227. In embodiments, the phonon properties 223 are generated from ALAMODE and / or ShengBTE software unit 212. Here, ALAMODE is a software designed for analyzing lattice anharmonicity and lattice thermal conductivity of spatial objects. ALAMODE uses external density functional theory (DFT) packages like VASP and Quantum ESPRESSO to extract harmonic and anharmonic force constants. The harmonic properties refer to phonon dispersion, phonon density of states (DOS), vibrational thermodynamic functions (heat capacity, entropy, free energy), and animation / visualization of phonon modes. The anharmonic properties refer to Griineisen parameter, lattice thermal conductivity, phonon linewidth, phonon frequency shift, and anharmonic vibrational free energy. ALAMODE is particularly useful for studying the thermal properties of materials and understanding how phonons (quantized modes of vibrations in a crystal lattice) interact. ShengBTE is also a software package designed to solve the Boltzmann Transport Equation (BTE) for phonons. ShengBTE’ s primary purpose is to compute the lattice thermal conductivity of bulk crystalline spatial objects, though it can also handle nanowires under certain conditions. For thermal conductivity calculation, ShengBTE computes the lattice contribution to thermal conductivity using inputs from ab-initio calculations, such as 2nd- and 3rd-order interatomic force constants. ShengBTE uses an iterative method to solve the full linearized BTE for phonons, which goes beyond the relaxation-time approximation (RTA). ShengBTE software provides detailed information about phonon frequencies, ground velocities, specific heat, vibrational density of states, and more. ShengBTE is particularly useful for predicting the thermal properties of materials, including those that have not yet been synthesized.
[0072] In embodiments, phonon properties 223 are provided from a storage 218 which is connected to the software unit 212 for storing the phonon properties generated thereby.
[0073] As shown in FIG. 2, the geometry data 227 are generated from a mesh generator 214 and a boundary conditions generator 216. In embodiments, the mesh generator 214 generate a mesh file in COMSOL and / or GMSH. COMSOL is a simulation software used for modeling and solving complex physical phenomena across various engineering and scientific disciplines. COMSOL allows users to couple multiple physical phenomena (e.g., electromagnetics, structural mechanics, fluid dynamics, heat transfer) in a single simulation.GMSH is an open-source 3D finite element mesh generator with built-in pre- and postprocessing facilities. A geometry module of GMSH allows for parametric geometry construction and manipulation. A mesh module of GMSH supports ID, 2D and 3D mesh generation, including unstructured, structured, and hybrid meshes. GMSH has solver module that can facilitates solving numerical simulations using the generated meshes. GMSH also has a post-processing module that provides tools for visualizing and analyzing simulation results.
[0074] In embodiments, the boundary conditions generator 216 generates diffuse boundary conditions, mixed boundary conditions and periodic boundary conditions. Diffuse boundary conditions assume that phonons are scattered randomly at the boundaries, losing memory of their previous direction. Mixed boundary conditions combine diffuse scattering with other effects, such as boundary conductance or isothermal boundaries. Periodic boundary conditions are used to simulate an infinite system by repeating the boundary conditions periodically. The periodic boundary conditions can include temperature jumps or heat sources / sinks.
[0075] As shown in FIG. 2, the solver stage 240 includes a control unit 230 providing input data from the input stage 210 to either a steady-state solver, which includes a Fourier solver 242 and a first BTE solver 244, or a transient-state solver, which includes a second BTE solver 246, or both, as solving the BTE for phonons can be approached in both steady-state and transient- state scenarios.
[0076] In embodiments, the steady-state solver involves implicit discrete ordinates method (DOM) which is used for steady- state solutions, providing second-order spatial accuracy. The steady- state solver also involves a synthetic iterative scheme that enhances computational efficiency by iteratively refining the solution.
[0077] In embodiments, the first BTE solver 244 employs multi-scale modeling for accurately capturing thermal transport phenomena across different length scales. The multiscale models can handle phonon-boundary interactions and size effects in nanostructures, which are not captured by traditional Fourier’s law. With the multi-scale models, the first BTE solver interfaces with first-principles calculations to provide accurate thermal property predictions without fitting parameters. The multi- scale solver can analyze multidimensional structures, enabling detailed temperature and flux maps, as well as mode-resolved thermal conductivity.
[0078] In embodiments, the transient- state solver involves explicit discrete ordinates method (DOM) which is used for transient-state solutions, also providing second-order spatial accuracy. The transient- state solver also involves time-dependent solutions that can handle time-dependent phenomena such as temperature rises in transistors or laser heating process.
[0079] In embodiments, the Fourier solver 242 is a tool used to perform Fourier analysis, which involves decomposing functions into their constituent frequencies. The first BTE solver 244 and the second BTE solver 246 are a JAX-BTE solver according to embodiments of the present disclosure as detailed herein below.
[0080] As shown in FIG. 2, output files of the solver 240 are generated with the temperature and heat flux 253 at each location of the simulated spatial object. The temperature and heat flux 253 data can be visualized in a visualization application 255. As an example, Paraview™ can be such a visualization application 255. Paraview™ is an open-source, multi-platform data analysis and visualization application designed to handle extremely large datasets.
[0081] FIG. 3 is a flowchart illustrating an iterative process 300 of the solver 240 shown in FIG. 2 according to embodiments of the present disclosure. The iterative process 300 includes exemplary steps 310-350 as described below.
[0082] In step 310, the iterative process 300 sets the initial equilibrium energy density e° and phonon energy density e according to an initial temperature.
[0083] In step 320, the iterative process 300 solves the discretized form of the BTE according to the input boundary conditions to update phonon energy density e according to Eq. 20 presented above.
[0084] In step 330, the iterative process 300 updates e° and T based on Eq. 17 presented above.
[0085] In step 340, the iterative process 300 checks if the criteria specified in below Eq. 24 are satisfied.where N is the number of spatial cells, eTand eqare user-predetermined target temperature residual and heat flux residual, respectively.
[0086] If the criteria specified in Eq. 24 are satisfied, the iterative process 300 aborts and outputs the solutions in step 350. If not, the iterative process 300 continues by repeating the steps 320 and 330.
[0087] FIG. 4 is a block diagram illustrating a forward-and-inverse modeling workflow 400 according to embodiments of the present disclosure. The workflow 400 includes exemplary block 402-460 as described below.
[0088] Block 402 represents an exemplary JAX-BTE solver. In a forward modeling workflow 405, the JAX-BTE solver 402 receives geometry data 410 of a simulated spatial object, material- specific phonon properties 420 and trainable parameters 430 associated with the spatial object. In embodiments, the geometry data 410 represents a mesh configuration of the simulated material. The mesh is spatial discretized to form a computational mesh.
[0089] In embodiments, the phonon properties 420 are obtained from first-principles density functional theory (DFT) calculations which provide detailed insights into the vibrational properties of the material. For example, DFT can calculate phonon frequencies, which describe the vibrational modes of atoms in a crystal. The phonon properties 420 also include thermal properties such as thermal conductivity and heat capacity.
[0090] In embodiments, the trainable parameters 430 include relaxation time, scattering rates, non-equilibrium distribution function, effective mass, temperature, and electric and magnetic fields. The relaxation time represents the average time between collisions of particles and is crucial for determining transport properties. The scattering rates describe how frequently particles scatter due to interactions with impurities, phonons, or other particles. The nonequilibrium distribution function describes how particles are distributed in phase space and can be adjusted to fit empirical data. The effective mass is used to describe the inertia of particles in a material and affects their transport behavior. The temperature influences the energy distribution of particles and their scattering rates. The electric and magnetic fields are external fields that can be varied to study their impact on particle transport.
[0091] As shown in FIG. 4, in the forward modeling workflow 405, the JAX-BTE solver outputs numerical results 440 which is provided to loss functions 450. In embodiments, the numerical results 440 includes phonon energy distribution, temperature distributions and heat flux.
[0092] In embodiments, the loss functions 450 involves minimizing the residuals of the BTE equations and boundary / initial conditions. The loss functions 450 include terms that measure how well the predicted solutions satisfy the BTE itself. Terms that ensure the predicted solutions meet the specified boundary condition(s) are included in the loss functions 450. For time-dependent problems, the loss functions 450 also includes terms that ensure the solutions match the initial conditions. In some examples, the loss functions 450 include regularization terms to help prevent overfitting by penalizing large or complex solutions.
[0093] As shown in FIG. 4, in the forward modeling workflow 405, measured dataset 460 is provided to the loss functions 450 to ensure that the model accurately reflects the physical properties and behaviors observed in experiments. In embodiments, the measure dataset 460 includes empirical data such as conductivity, mobility, and other transport properties. The loss functions 450 incorporates terms that measure the discrepancy between the model’s predictions and the experimented data. This discrepancy measurement helps validate the accuracy of the model. By minimizing the loss function 450, the solver 240 adjusts its parameters to better fit the measured data, improving the reliability of the predictions. In embodiments, the regularization terms in the loss functions 450 can prevent overfitting to the empirical data, ensuring that the model generalizes well to unseen conditions.
[0094] Referring again to FIG. 4, in an inverse modeling workflow 407, differentiable programming enables inverse simulations when certain input information, like transistor dimensions and / or heat source intensity, is unknown but additional measurement data are available. In the inverse modeling workflow 407, the trainable parameters are unknown and can be trained through the gradient-based optimization.
[0095] In embodiments, for the inverse modeling workflow 407, the JAX-BTE solver 402 facilitates the optimization of unknown or uncertain input parameters by comparing simulated results with empirical measurements. For example, these unknown or uncertain input parameters include material properties, geometric variables, or heat source intensities. In embodiments, the inverse problem is formulated as an optimization problem, where the objective is to minimize a loss function 450 that quantifies the difference between the simulation outputs, i.e., the numerical results 440 (e.g., temperature or heat flux) and the corresponding measured data 460. Given that JAX-BTE solver 402 is fully differentiable, the loss function 440 can be expressed as a function of the trainable parameters 430, and its gradient with respect to these parameters is automatically computed through the automatic differentiation (AD) capabilities of JAX-BTE solver 402. The differentiability feature inJAX-BTE solver 402 is enabled by the JAX gradient tracking framework. While AD is used for flux calculations and gradient reconstruction, gradient propagation for implicit components, such as the Biconjugate Gradient Stabilized (BiCGSTAB) solver, is handled through a discrete adjoint approach. Instead of simply applying AD to iterative steps, which would be computationally inefficient, JAX formulates an additional adjoint equation system and solves the computation task using BiCGSTAB. This hybrid strategy leverages the flexibility of AD for explicit computations while utilizing adjoint methods for iterative solvers, ensuring efficient and scalable gradient tracking even for large-scale phonon BTE simulations. This gradient information enables the use of gradient-based optimization algorithms, such as stochastic gradient descent (SGD), Adam, or Limited-memory Broyden- Fletcher-Goldfarb-Shanno (L-BFGS), to iteratively update the parameters and minimize the loss. The differentiability of the solver ensures that even complex, high-dimensional parameter spaces can be explored systematically, allowing for accurate recovery of unknown parameters or material properties in a physics-constrained setting.
[0096] FIG. 5 is a block diagram illustrating an architecture 500 of the JAX-BTE solver 402 shown in FIG. 4 according to embodiments of the present disclosure. In embodiments, phonon energy densities of a simulated material are stored as a three-dimensional (3D) JAX tensor 510, with indices corresponding to the cell index, band index, and angular index. The 3D JAX tensor 510 is a multi-dimensional array used in JAX for numerical computations. The 3D JAX tensor 510 has three dimensions, represented by cell dimension, band dimension and angle dimension. A cell can be represented by a mesh point within the cell.
[0097] In embodiments, the JAX-BTE solver 402 also utilizes the owner list 514 and neighbor array 516 derived from the geometry of the simulated material to map the phonon energy tensors 510 onto a graph-based data structure 520 that encodes the topological information of the computational mesh. Using this graph-based data structure 520, the JAX- BTE solver 402 efficiently computes the phonon energy densities by solving the discretized algebraic equations in parallel using GPUs. This tensor-based parallelization enables efficient updates of the phonon energy distribution 530 across both structured and unstructured meshes.
[0098] As shown in FIG. 5, the updated phonon energy tensor 530 are utilized to re-generate the graph-based data structure 520 for another round of computation of phonon energy densities in an iterative scheme.
[0099] FIG. 6 is a flowchart illustrating a fully vectorized solver process 600 according to embodiments of the present disclosure. The process 600 includes exemplary initialization step 610, data slicing step 620, update function step 630 and parallel execution step 640 as described below.
[0100] In the initialization step 610, the process 600 gathers mesh domain data into n- dimensional phonon energy tensors for GPU processing. An example of such n-dimensional phonon energy tensors is depicted in FIG. 5 as the 3D phonon energy tensor 510 with a number of spatial cells.
[0101] In the data slicing step 620, the process 600 selects phonon energy density for a single cell and its neighboring cells.
[0102] In the update function step 630, the process 600 applies a predefined function, such as BTE, to update the phonon energy density.
[0103] In the parallel execution step 640, the process 600 execute the update function in parallel for all cells.
[0104] FIG. 7 is a flowchart illustrating a thermal modeling process 700 according to embodiments of the present disclosure. The thermal modeling process 700 is exemplarily executed on the JAX framework on a GPU based parallel computing platform. The thermal modeling process 700 exemplarily includes blocks 710-770 as described below.
[0105] In block 710, the process 700 obtains phonon properties and a mesh of a spatial object to be modeled. An example of the spatial object is a semiconductor device.
[0106] In block 720, the process 700 assembles a tensor based on the phonon properties and the mesh of the spatial object.
[0107] In block 730, the process 700 executes the BTE on components of the tensor in parallel to generate an estimation of temperature and / or heat flux distribution in the spatial object.
[0108] In block 740, the process 700 updates the tensor with the estimation from block 730.
[0109] In block 750, the process 700 calculates a residual between results of subsequent executions.
[0110] In block 760, the process 700 compares the residual from block 750 with a predetermined threshold. If the residual is higher than the predetermined threshold, theprocess 700 returns to block 730 and iterates through blocks 730-760. If the residual is lower than the predetermined threshold, i.e., each iteration produces a small difference, the process 700 exits to block 770 to output a solution for the modeling process.
[0111] FIGs. 8A and 8B illustrate a modeling performance of a ID cross-plane 802 according to embodiments of the present disclosure. As illustrated in FIG. 8A, the boundary conditions for the ID cross-plane 802 are as follows: the left side is isothermal at 400K, the right side is isothermal at 300K, and the remaining sides are reflective. The discretization specifics include a mesh with 100 uniform cells, 128 angles, and a single phonon band (i.e., gray model).
[0112] FIG. 8B illustrates an accuracy evaluation by comparing the temperature profiles along a center line between JAX-BTE and an analytical solution with:
[0113] FIGs. 9A-9D illustrate a modeling performance of a long-based FinFet transistor 902 according to embodiments of the present disclosure. As illustrated in FIG. 9A, the transistor 902 has following edge dimensions:
[0114] The boundary conditions for the transistor 902 are as follows: the bottom side is isothermal at 300K, and the remaining sides are diffusely reflective. The discretization specifics include a structured mesh with 33,000 cells, 128 angles, a single band (gray model) and 10 bands (non-gray model). A uniform heat source is lel9W / m3.
[0115] FIG. 9B illustrates a performance evaluation by comparing the temperature profiles along a center line between JAX-BTE and GiftBTE.
[0116] FIG. 9C illustrates a temperature field of the transistor predicted by the JAX-BTE according embodiments of the present disclosure using one phonon band (i.e., gray model).
[0117] FIG. 9D illustrates a temperature field of the transistor predicted by the JAX-BTE according embodiments of the present disclosure using 10 discretized phonon bands in the wave vector domain (i.e., non-gray model).
[0118] FIGs. 10A-10C illustrate a modeling performance of a short-based FinFet transistor 1002 according to embodiments of the present disclosure. As illustrated in FIG. 10A, the transistor 1002 has following edge dimensions:
[0119] The boundary conditions for the transistor 1002 are as follows: the bottom side is isothermal at 300K, and the remaining sides are specularly reflective. The discretization specifics include an unstructured mesh of 28,500 cells, 128 angles, and 58 bands (non-gray model). A uniform heat source, various heat source intensities based on gate and drain voltages.
[0120] FIG. 10B illustrates a performance evaluation by comparing simulated mean gate temperature with empirically measured temperature.
[0121] FIG. 10C illustrates a temperature field of the transistor 1002 predicted by the JAX- BTE according embodiments of the present disclosure.
[0122] Inverse problems involve determining unknown parameters of a system from observable data. The presently disclosed JAX-BTE solver, leveraging the differentiable programming capabilities of JAX, enables end-to-end optimization for such tasks.
[0123] In an experiment, the ID silicon thin film as shown in FIG. 8A was studied. Different from studying the ID cross-plane phonon transport, the film thickness L in this experiment is unknown. A goal of solving the inverse problem is to determine the unknown film thickness L that results in a given temperature profile. Temperature observations are taken at 20 uniformly spaced points along the domain, and the L2 norm is used to measure the discrepancy between the simulated and observed temperatures.
[0124] The film thickness is parameterized and incorporated into the mesh initialization process for inverse learning. Starting with an initial guess of 50 nm, the temperature profile is simulated using the JAX-BTE solver. The discrepancy between this simulated temperatureand the target temperature distribution from the ground truth setup is quantified using the L2 norm between the predicted and observed temperatures at the 20 selected points. The differentiability of JAX-BTE solver enables the use of gradient descent to iteratively adjust the system size L by minimizing the L2 loss. An exponential decay scheduler is applied to improve the convergence rate. Within 25 iterations, the process converges to the correct film thickness of 100 nm.
[0125] The results of the experiment demonstrate that the JAX-BTE solver, through the differentiable programming, facilitates efficient and accurate inverse design. The JAX-BTE solver’s ability to accurately converge to the true system size validates its effectiveness and robustness in practical applications of inverse design in nanoscale heat transfer. This approach highlights the potential of the JAX-BTE in broadening the scope of computational experiments for device design and material selection.
[0126] FIGs. 11A-11C are plots showing results of inverse learning for a system size of the ID thin film shown in FIG. 8A according to embodiments of the present disclosure. FIG. 11 A plots the predicted system size trajectory during the inverse learning iterations. The dashed line represents the 100 nm ground truth system size. FIG. 11 A shows the converging of the system size over iterations.
[0127] FIG. 1 IB plots the temperature profile with ground truth system size of 100 nm. The cycles represent temperatures at the observed points used for the JAX-BTE solver used as an inverse learner.
[0128] FIG. 11C plots the predicted temperature profile using the observed data.
[0129] In another experiment, the inverse problem of predicting the heat source intensity within a 2D domain using sparse temperature observations was studied. The boundary conditions are set to be isothermal at 300 K on the bottom and specularly reflective on all other sides. The domain is a 100 nm x 100 nm square with a heat source located in a 10 nm x 20 nm rectangular box close to the top surface. The domain is discretized using an unstructured mesh with approximately 1,000 cells. The true heat source is uniformly distributed within the box, with an intensity set at 1019W / m2. The ground truth temperature distribution is obtained by solving the phonon BTE using the JAX-BTE solver. Temperature observations are taken at 20 evenly spaced locations along the bottom face (shown in FIG. 12B). It is important to note that in the JAX-BTE inverse solver, the temperature at locations other than these 20 points remains unknown.
[0130] Following the same procedure as in the ID case, the experiment began with an initial guess for the heat source intensity of 1018W / m2and used gradient descent to minimize the discrepancy between the predicted and observed temperatures. After 10 iterations, the predicted heat source intensity converges to the ground truth value. The rapid convergence in this inverse problem demonstrates the effectiveness of the JAX-BTE solver in accurately determining heat source intensities from sparse temperature observations. This case has direct practical implications, as quantifying the heat source in transistors is often challenging, whereas temperature measurements are more readily obtainable. The ability to infer heat source intensity using the JAX-BTE framework can significantly enhance the accuracy of thermal management in nanoelectronics.
[0131] FIGs. 12A-12C illustrate results of inverse learning for the heat source intensity of a 2D square domain according to embodiments of the present disclosure. FIG. 12A plots the predicted heat source intensity trajectory during the inverse learning iterations. The dashed line represents the ground truth heat source intensity.
[0132] FIG. 12B shows the temperature distribution with ground truth heat source intensity of 1019W / m2. Dots represent temperatures at the observed points for the JAX-BTE inverse learner.
[0133] FIG. 12C shows the predicted temperature distribution using the observed data.
[0134] To comprehensively evaluate the performance of JAX-BTE solver, a scalability study were conducted across varying problems, ranging from approximately 1 million to 110 million degrees of freedom (DoF). Both JAX-BTE and GiftBTE employed the BiCG solver with identical settings, running 300 iterations for each case to ensure a fair comparison. The JAX-BTE simulations were tested on two type of GPUs (NVIDIA RTX 4090 and A100), while GiftBTE was executed on an AMD EPYC 7543 CFD system, utilizing 8, 16, 32, and 64 CPU cores.
[0135] The results, presented in FIG. 13, demonstrate that JAX-BTE consistently outperforms GiftBTE across all problem sizes, exhibiting superior scalability and computational efficiency. For the smallest case (1 million DoF),, JAX-BTE completes the computation in just 29 seconds on an RTX 4090 and 34 seconds on an A100 GPU, whereas GiftBTE requires 243 seconds on 8 CPU cores, 199 seconds on 16 cores, and 179 seconds on 64 cores, achieving a 6-8x speedup over GiftBTE.
[0136] As the problem size increases, JAX-BTE maintains a significant performance advantage. For the 25 million DoF case, JAX-BTE completes the simulation in 202 seconds (RTX 4090) and 257 seconds (A100), compared to 936 seconds for GiftBTE on 64 CPU cores, resulting in a 4 times acceleration. For the largest tested case (110 million DoF), JAX- BTE on the A100 completes the simulation in 1340 seconds, while GiftBTE requires 3317 seconds even with 64 CPU cores. The RTX 4090, while highly efficient for smaller cases, was unable to run this simulation due to GPU memory limitations.
[0137] It is important to emphasize that JAX-BTE achieves this performance using a single GPU, while GiftBTE relies on multi-core CPU parallelization. Scaling JAX-BTE to multiple GPUs would further enhance its efficiency, enabling even greater speedups for large-scale phonon transport simulations.
[0138] FIG. 13 is a plot illustrating scalability comparison between JAX-BTE and GiftBTE across different problem sizes, ranging from 106to 108DOF. The JAX-BTE was executed on single GPUs (RTX 4090 and A100), while GiftBTE was tested on an AMD EPYC 7543 CPU system using 8, 16, 32, and 64 cores.
[0139] The JAX-BTE solver is a general fully vectorized solver for phonon BTE with differentiability. The JAX-BTE solver supports parallel computation for both structured and unstructured mesh. The JAX-BTE solver supports both CPU and GPU backends.
[0140] FIG. 14 is a bar chart illustrating a performance comparison (approximately 45 million DOF). As shown in FIG. 14, the CPU backend is slow due to the low throughput of the CPU and Python’s issues with utilizing multiple CPU cores. The GPU version of the JAX-BTE can achieve approximately 8 times speed improvement over the C++ numerical solver using 32 CPU cores (CPU: AMD EPYC 7452 (32 cores) vs. GPU: Nvidia A100 (40 GB)). However, GPU memory is still the bottleneck and currently the max DOF the JAX- BTE solver can handle is approximately 45 million DoF (28.5K cells x 128 angles x 12 bands).
[0141] The present disclosure demonstrates the reliability and efficiency of the GPU- accelerated, differentiable solver, JAX-BTE, for nanoscale heat transfer problems. The validation cases have been rigorously designed to assess the accuracy and reliability of the JAX-BTE across a variety of scenarios. The accuracy has been validated through comparisons with analytical solutions and other established numerical solvers. Moreover, the differentiability of the JAX-BTE has been demonstrated through ID and 2D inverse problemsusing sparse temperature measurements. These examples not only affirm the solver’s accuracy in forward settings but also highlight its potential to facilitate material and structural design in inverse settings. Unlike conventional solvers that lack built-in differentiability, the JAX-BTE enables automatic gradient computations, making the JAX-BTE uniquely suited for sensitivity analysis, inverse learning, and machine learning-assisted optimization. By seamlessly integrating differentiable programming with high-performance computing, the JAX-BTE bridges the gap between numerical phonon transport simulations and modern AI- driven engineering workflows.
[0142] The promising AD ability of JAX-BTE solver open new avenues for its application in future inverse design tasks. By integrating the JAX-BTE with experimental data and optimization techniques, users can enhance the design and development of micro and nanoscale electronic devices. The JAX-BTE solver’s ability to handle multiple scales and complexities in thermal simulations makes the JAX-BTE a versatile tool for researchers and engineers working at the forefront of semiconductor technology and materials science.
[0143] However, the current implementation of the JAX-BTE is constrained by GPU memory, limiting the maximum DoF the solver can handle to approximately 100 million when using a single NVIDIA A 100 GPU card. For more complex BTE simulations and inverse learning tasks, higher spatial and angular resolutions may be necessary, potentially exceeding this limit. To overcome these limitations, future work will focus on developing advanced strategies to expand the JAX-BTE solver’s capabilities. Specifically, embodiments of the present disclosure can implement multi-GPU parallelism and out-of-core computation techniques to distribute data and computation efficiently across multiple GPUs. These enhancements will significantly increase the JAX-BTE solver’s capacity, enabling the JAX- BTE solver to handle even larger BTE simulations. Additionally, incorporating adaptive mesh refinement and advanced preconditioning techniques could further optimize performance and memory usage.
[0144] Furthermore, we plan to extend the JAX-BTE by incorporating interface models to support simulations involving multi-material coupling and by incorporating transient analysis capabilities. These enhancements will enable simulations of complex, multi-material systems and dynamic thermal processes, broadening the applicability of the JAX-BTE solver to a wider range of practical engineering problems.
[0145] By addressing these challenges, the JAX-BTE solver will not only enhance its applicability to more complex scenarios but also push the boundaries of what can be achieved in nanoscale heat transfer simulations and inverse design. These advancements will be essential for driving innovation in the next generation of semiconductor devices and advanced materials.
[0146] FIG. 15 is a block diagram of an exemplary computing device 1500. As illustrated in this figure, exemplary computing device 1500 includes at least core complexes 1505A-N, input / output (I / O) interfaces 1520, bus 1525, memory controller 1530, network interface 1535, memory device 1540, and processing-in-memory device 1550. In other implementations, computing device 1500 can include other components and / or computing device 1500 can be arranged differently. In an implementation, each core complex 1505A-N includes one or more general purpose processors, such as central processing units (CPUs). It is noted that a “core complex” can also be referred to as a “processing unit”, “processing node” a “CPU”, a “processor”, or an “accelerator” herein. In some implementation, one or more core complexes 1505A-N can include a data parallel processor with a highly parallel architecture. Examples of data parallel processors include graphics processing units (GPUs), digital signal processors (DSPs), field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), and so forth. Each processor core within core complex 1505A-N includes a cache subsystem with one or more levels of caches. In an example, each core complex 1505 A-N includes a cache (e.g., level three (L3) cache) which is shared between multiple processor cores.
[0147] Memory controller(s) 1530 are representative of any number and type of memory controllers accessible by core complexes 1505A-N. Memory controller(s) 1530 are coupled to any number and type of memory devices 1540. Depending on implementations, the type of memory in memory devices 1540 coupled to memory controllers 1530 can include Dynamic Random Access Memory (DRAM), Static Random Access Memory (SRAM), NAND Flash memory, NOR Flash memory, Ferroelectric Random Access Memory (FeRAM), or other types. In an implementation, memory devices 1540 include and / or are coupled to any number of processing-in-memory (PIM) devices 1550 for performing processing operations close to or within memory device 1540. Incorporating PIM capabilities in or near the memory devices 1540 can improve performance and energy efficiency for a range of compute workloads.
[0148] RO interfaces 1520 are representative of any number and type of RO interfaces (e.g., peripheral component interconnect (PCI) bus, PCI-Extended (PCI-X), PCI Express (PCIe)bus, gigabit Ethernet (GBE) bus, universal serial bus (USB)). Various types of peripheral devices can be coupled to I / O interface 1520. Such peripheral devices include (but are not limited to) displays, keyboards, mice, printers, scanners, joysticks or other types of game controllers, media recording devices, external storage devices, network interface cards, and so forth.
[0149] In various implementations, computing device 1500 can be a server, personal computer, laptop, mobile device, game console, streaming device, wearable device, or any of various other types of computing systems or devices. It is noted that the number of components in computing device 1500 can vary from implementation to implementation. There can be more or fewer of each component than the number shown in FIG. 15. It is also noted that computing device 1500 can include other components not shown in FIG. 15. Additionally, in other implementations, computing device 1500 can be structured in other ways than shown in FIG. 15.
[0150] Some portions of the detailed descriptions of this disclosure have been presented in terms of procedures, logic blocks, processing, and other symbolic representations of operations on data bits within a computer or digital system memory. These descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. A procedure, logic block, process, etc., is herein, and generally, conceived to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these physical manipulations take the form of electrical or magnetic data capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system or similar electronic computing device. For reasons of convenience, and with reference to common usage, such data is referred to as bits, values, elements, symbols, characters, terms, numbers, or the like, with reference to various presently disclosed embodiments.
[0151] It should be borne in mind, however, that these terms are to be interpreted as referencing physical manipulations and quantities and are merely convenient labels that should be interpreted further in view of terms commonly used in the art. Unless specifically stated otherwise, as apparent from the discussion herein, it is understood that throughout discussions of the present embodiment, discussions utilizing terms such as “determining” or “outputting” or “transmitting” or “recording” or “locating” or “storing” or “displaying” or “receiving” or “recognizing” or “utilizing” or “generating” or “providing” or “accessing” or“checking” or “notifying” or “delivering” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data. The data is represented as physical (electronic) quantities within the computer system’s registers and memories and is transformed into other data similarly represented as physical quantities within the computer system memories or registers, or other such information storage, transmission, or display devices as described herein or otherwise understood to one of ordinary skill in the art.
Claims
We claim:
1. A method for estimating a physical parameter in a spatial object, the method comprising: obtaining, by a computing device, at least one property of the spatial object; obtaining, by the computing device, a mesh representing a topology of the spatial object; assembling, by the computing device, a first tensor based on the at least one property and the mesh, the first tensor having at least a first and a second component representing a first and a second point in the mesh, respectively; executing simultaneously, by a first and a second processing unit of the computing device, a predetermined function on the first and the second component, respectively; and generating, by the computing device, a first and a second estimation of the physical parameter at the first and second point, respectively, from executing the predetermined function on the first and the second component, respectively.
2. The method of claim 1, wherein the physical parameter is temperature or heat flux in the spatial object.
3. The method of claim 1, wherein the predetermined function involves Boltzmann transport equation (BTE).
4. The method of claim 3, wherein executing the predetermined function involves differentiable programming to solve the BTE.
5. The method of claim 1, wherein the at least one property comprises at least one phonon property of the spatial object.
6. The method of claim 5, wherein assembling the first tensor comprises discretizing the at least one phonon property in frequency and polarization domains.
7. The method of claim 1, wherein the at least one property comprises a trainable parameter associated with the spatial object, the trainable parameter being selected from the group consisting of a relaxation time, a scattering rate, a non-equilibrium distribution function, an effective mass, a temperature, an electric field and a magnetic field .
8. The method of claim 1, wherein the at least one property comprises a boundary condition of the spatial object, the boundary condition being selected from the group consisting of isothermal boundary condition, diffusely reflecting boundary condition and specularly reflecting boundary condition.
9. The method of claim 1, wherein the first component comprises a relationship between the first and the second point in the mesh.
10. The method of claim 1, further comprising: updating, by the computing device, the first tensor with the first and the second estimation to form a second tensor; executing, by the computing device, the predetermined function on the second tensor; and generating, by the computing device, a third and fourth estimation of the physical parameter at the first and the second point, respectively, from executing the predetermined function on the second tensor.
11. The method of claim 10, further comprising: calculating, by the computing device, a difference between the first and third estimation of the physical parameter; and updating, by the computing device, the second tensor with the third and the fourth estimation to form a third tensor if the difference is larger than a predetermined threshold; and executing, by the computing device, the predetermined function on the third tensor.
12. The method of claim 1, further comprising: comparing, by the computing device, the first estimation and an empirical measurement of the physical parameter;updating, by the computing device, the first tensor with the first and second estimation of the physical parameter to form a second tensor if a result of comparing the first estimation and the empirical measurement is above a predetermined threshold; and executing, by the computing device, the predetermined function on the second tensor.
13. The method of claim 12, wherein comparing the first estimation and the empirical measurement of the physical parameter comprises inputting the first estimation and the empirical measurement of the physical parameter to a loss function, the loss function including at least a term for: ensuring that the estimation of the physical parameter meet a predetermined boundary condition, ensuring that the estimation of the physical parameter matches an initial condition, or preventing overfitting the estimation to the empirical measurement of the physical parameter.
14. The method of claim 1, further comprising providing a heat source distribution to the predetermined function for the execution.
15. A system for estimating a physical parameter in a spatial object, the system comprising: a computing device having a first and a second processing unit; and a memory in communication with the computing device and storing instructions that, when executed by the computing device, cause the computing device to: obtain at least one property of the spatial object; obtain a mesh representing a topology of the spatial object; assemble a first tensor based on the at least one property and the mesh, the first tensor having at least a first and a second component representing a first and a second point in the mesh, respectively; execute, simultaneously by the first and the second processing unit of the computing device, a predetermined function on the first and the second component, respectively; andgenerate a first and a second estimation of the physical parameter at the first and second point, respectively, from executing the predetermined function on the first and the second component, respectively.
16. The system of claim 15, wherein the physical parameter is temperature or heat flux in the spatial object.
17. The system of claim 15, wherein the predetermined function involves Boltzmann transport equation (BTE).
18. The system of claim 17, wherein executing the predetermined function involves differentiable programming to solve the BTE.
19. The system of claim 15, wherein the at least one property comprises at least one phonon property of the spatial object.
20. The system of claim 19, wherein assembling the first tensor comprises discretizing the at least one phonon property in frequency and polarization domains.
Citation Information
Patent Citations
Mapping Intermediate Material Properties To Target Properties To Screen Materials
US20160162625A1
High thermal conductivity boron arsenide for thermal management, electronics, optoelectronics, and photonics applications
US20210035885A1
Methods of Design and Use of High Mobility P-Type Metal Oxides
US20220115503A1
Integrated process-structure-property modeling frameworks and methods for design optimization and / or performance prediction of material systems and applications of same
US20230394196A1