From bernauer at informatik.uni-tuebingen.de Thu Apr 1 02:14:28 2010 From: bernauer at informatik.uni-tuebingen.de (Andreas Bernauer) Date: Thu, 1 Apr 2010 09:14:28 +0200 (CEST) Subject: [Hotspot] Power values from cacti In-Reply-To: <517638.48542.qm@web54205.mail.re2.yahoo.com> Message-ID: <4667575.911270106063065.JavaMail.bernauer@lava> I don't think scaling power densities is a good idea, but maybe someone can correct me. If the temperature values are less than what you'd expect, the cooling is maybe too strong. You can change the package properties (r_convec and c_convec) to account for this. Also, you have to make sure that the package dimensions match your chip (in particular s_sink and s_spreader, but maybe also t_sink, t_chip, and t_spreader). Nevertheless, I have difficulties simulating very small chips with HotSpot, too. -- Andreas Bernauer WSI/TI, Sand 13, B202, 72076 T?bingen, +49 70 71 29 75 940 http://www.ti.uni-tuebingen.de/Andreas_Bernauer.227.0.html ----- "fazal hameed" wrote: > Hi, > I am using cacti 6.0 for the dynamic power, lkg power and area > estimation of register file, Issue queue, ROB etc with the technology > files from ITRS. The power values are very small for the cacti and the > average power density of most of the components is in the range of 0.7 > W/mm2. I have generated a floorplan using cacti area model. By running > cycle accurate simulation for the single core, I get very less temp > values. I do not know how to address this problem. I want to address > the thermal issue in my experiment by using some microarchitectural > techniques. But the avg temp is the range of 45.7 close to ambient > temperature. There is significant reduction in power but not equally > reduction in temperature. > > Is the problem due to very small area of the core and the heat sink > model is large or should I change the package properties. > > Is there any method to cope with this issue. Should I multiply the > power values of each component with a constant value of 10 so that > power density is 7 W/mm2. > > > regards, > Fazal Hameed > > > > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot From skadron at cs.virginia.edu Thu Apr 1 08:01:14 2010 From: skadron at cs.virginia.edu (Kevin Skadron) Date: Thu, 01 Apr 2010 09:01:14 -0400 Subject: [Hotspot] Power values from cacti In-Reply-To: <4667575.911270106063065.JavaMail.bernauer@lava> References: <4667575.911270106063065.JavaMail.bernauer@lava> Message-ID: <4BB4991A.7040902@cs.virginia.edu> Thanks to Andreas for his comments. He's right. 7 W/mm^2 is unrealistic; 0.7 is pretty reasonable for many structures, depending on how heavily ported they are and on the activity factor. For very small chips, it will be important to adjust the cooling properties. /K Andreas Bernauer wrote: > I don't think scaling power densities is a good idea, but maybe someone can correct me. > > If the temperature values are less than what you'd expect, the cooling is maybe too strong. You can change the package properties (r_convec and c_convec) to account for this. Also, you have to make sure that the package dimensions match your chip (in particular s_sink and s_spreader, but maybe also t_sink, t_chip, and t_spreader). > > Nevertheless, I have difficulties simulating very small chips with HotSpot, too. > From bochen.wu at gmail.com Mon Apr 5 20:17:47 2010 From: bochen.wu at gmail.com (Bo Chen Wu) Date: Mon, 5 Apr 2010 20:17:47 -0400 Subject: [Hotspot] Debug the source code Message-ID: Hey guys, I have several questions would like to ask you guys: 1) I just finished running the Hotspot tutorial? I would like to debug to see what is the hotspot actually doing while running it? Can I use visual studio 2008 to debug it? Or do you have a better program to suggest for me to debug the source code? 2) I notice that hotspot support partial 3-D stacking thermal which only apply for grid model, What is the model which thermal model is the current 3-D stacking thermal model that Hotspot is using, or What kind equation is the Hotspot use to compute the each grid cell's temperature at run time? 3) I am currently trying to integrate a 3-D liquid cooling thermal model to the Hotspot, I think the best place of the source for me to change is in the RCutil.c function AK4? is this correct? -- Thank You For Your Time. Bo Chen Wu (646)-861-9905 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100405/de7e86f6/attachment.html From wh6p at virginia.edu Tue Apr 6 10:54:37 2010 From: wh6p at virginia.edu (Wei Huang) Date: Tue, 6 Apr 2010 09:54:37 -0500 Subject: [Hotspot] Debug the source code In-Reply-To: References: Message-ID: HI Please see below... On Mon, Apr 5, 2010 at 7:17 PM, Bo Chen Wu wrote: > Hey guys, > > I have several questions would like to ask you guys: > > 1) I just finished running the Hotspot tutorial? I would like to debug to > see what is the hotspot actually doing while running it? Can I use visual > studio 2008 to debug it? Or do you have a better program to suggest for me > to debug the source code? > Our online HOW-TO provides step-by-step instructions on how to compile HotSpot in Windows and how to use HotSpot in VC++. > > 2) I notice that hotspot support partial 3-D stacking thermal which only > apply for grid model, What is the model which thermal model is the current > 3-D stacking thermal model that Hotspot is using, or What kind equation is > the Hotspot use to compute the each grid cell's temperature at run time? > I am not sure I understand your question. The grid model is a finite-difference model, which updates temperature of one grid cell based its neighbors and iterate. > > 3) I am currently trying to integrate a 3-D liquid cooling thermal model to > the Hotspot, I think the best place of the source for me to change is in the > RCutil.c function AK4? is this correct? > This seems a non-trivial hack to HotSpot. I don't have a ready answer for you now. But it should be more complicated than just modify the algorithm. If you are talking about microchannel cooling, you need to add layers that model the microchannels, and also have a good way to model the silicon-to-channel convection, and the thermal model for the liquid flow. There are some recent papers on how to model 3D u-channel cooling in the literature, for example, you can search recent ICCAD papers. Hope this helps. -Wei > > -- > Thank You For Your Time. > Bo Chen Wu > (646)-861-9905 > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100406/2dad3f84/attachment.html From aytackubilay at gmail.com Wed Apr 7 10:30:38 2010 From: aytackubilay at gmail.com (=?ISO-8859-1?Q?Ayta=E7_Kubilay?=) Date: Wed, 7 Apr 2010 16:30:38 +0200 Subject: [Hotspot] internal nodes Message-ID: Hello, I can not find any reference in documentation regarding the temperature results of 'inode's. I get these nodes when I try a steady simulation using block model. There are 12 of them in total and I wonder of they represent the peripheral node temperatures or the additional nodes between lateral resistances of different layers. If they represent for the peripheral nodes, why are there 12 of them instead of 8? Regards, Ayta? Kubilay -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100407/8acd89fb/attachment.html From wh6p at virginia.edu Wed Apr 7 11:18:37 2010 From: wh6p at virginia.edu (Wei Huang) Date: Wed, 7 Apr 2010 10:18:37 -0500 Subject: [Hotspot] internal nodes In-Reply-To: References: Message-ID: Those nodes are for the peripheral nodes in heat spreader and heat sink: 4 for heat spreader peripheral blocks; 4 for heatsink peripheral covered by the heat spreader; 4 for heatsink peripheral (outer peripheral) blocks that are not covered by the heat spreader. There is also another node for ambient, so in total, there are 13 extra nodes. -Wei On Wed, Apr 7, 2010 at 9:30 AM, Ayta? Kubilay wrote: > Hello, > > I can not find any reference in documentation regarding the temperature > results of 'inode's. I get these nodes when I try a steady simulation using > block model. > > There are 12 of them in total and I wonder of they represent the peripheral > node temperatures or the additional nodes between lateral resistances of > different layers. If they represent for the peripheral nodes, why are there > 12 of them instead of 8? > > Regards, > Ayta? Kubilay > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100407/9503a05c/attachment.html From spiring at gmail.com Wed Apr 7 14:14:33 2010 From: spiring at gmail.com (Neo Philia) Date: Wed, 7 Apr 2010 13:14:33 -0500 Subject: [Hotspot] Thermal conductance Message-ID: Hello, I have some questions about the thermal conductance (or thermal resistance): 1. If only steady state temperature is interested, then the term C*(dT/dt) becomes zero, the thermal equation can be simplified as A*T + P = 0, where A is the thermal conductance matrix, T is the steady state temperature and P is power consumption matrix. (If the ambient temperature is not 0, I guess the equation becomes A*T + P + H = 0, where H is the boundary condition matrix.) Is that the way how the steady state temperature is computed? (another question: what's the value for P to compute steady state temperature? Is it the last power value in the power trace? Or is it the average of all previous power values?) 2. Is there a way I can output the value of the A (thermal conductance) matrix? 3. On the other hand, can I compute the A matrix using T and P matrix (Still for steady state temperature)? Here is what I did: Assume a 3x3 grid floorplan, the blocks are named from node1~node9 and node5 is the center one. For node5, there should be five equivalent thermal resistance based on the RC model: 4 lateral resistances to the neighbor blocks(node2, node4, node6, and node8), R52, R54, R56, R58, and one vertical resistance to the heat spreader above it, R5s. Then based on the thermal balance equation of node5, the following relation should be true: (T5-T2)/R52 + (T5-T4)/R54 + (T5-T6)/R56 + (T5-T8)/R58 - (T5-Tspreader)/R5s = P5 There are five resistances, which means five unknowns and five equations are needed to solve them. So, if I give 5 different powers on node5(powers for other nodes are also given), then I can get five groups of temperature values of (T2, T4, T5, T6, T8 and Tspreader). Then I can solve all the five thermal resistances. However, the results I got seems not very correct. I use the thermal resistance I got by solving the equation groups to verify a new power input (which means now I use A and P to calculate T), the computed T doesn't match the Temperature given by HotSpot simulation. What's wrong with my method? Anything I missed? Thanks very much. Neo -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100407/589d5e28/attachment.html From wh6p at virginia.edu Wed Apr 7 17:02:53 2010 From: wh6p at virginia.edu (Wei Huang) Date: Wed, 7 Apr 2010 16:02:53 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: References: Message-ID: > > > 1. If only steady state temperature is interested, then the term C*(dT/dt) > becomes zero, the thermal equation can be simplified as A*T + P = 0, where A > is the thermal conductance matrix, T is the steady state temperature and P > is power consumption matrix. (If the ambient temperature is not 0, I guess > the equation becomes A*T + P + H = 0, where H is the boundary condition > matrix.) Is that the way how the steady state temperature is computed? > (another question: what's the value for P to compute steady state > temperature? Is it the last power value in the power trace? Or is it the > average of all previous power values?) > It is the average of power trace entries. > > 2. Is there a way I can output the value of the A (thermal conductance) > matrix? > Yes you can, but not directly from a built-in function call. In some functions like populate_R(), all the conductance values between two nodes are calculated. You can dump the matrix from there. > > 3. On the other hand, can I compute the A matrix using T and P matrix > (Still for steady state temperature)? Here is what I did: > Assume a 3x3 grid floorplan, the blocks are named from node1~node9 and > node5 is the center one. For node5, there should be five equivalent thermal > resistance based on the RC model: 4 lateral resistances to > the neighbor blocks(node2, node4, node6, and node8), R52, R54, R56, R58, > and one vertical resistance to the heat spreader above it, R5s. Then based > on the thermal balance equation of node5, the following relation should be > true: > > (T5-T2)/R52 + (T5-T4)/R54 + (T5-T6)/R56 + (T5-T8)/R58 - (T5-Tspreader)/R5s > = P5 > > There are five resistances, which means five unknowns and five equations > are needed to solve them. So, if I give 5 different powers on node5(powers > for other nodes are also given), then I can get five groups of temperature > values of (T2, T4, T5, T6, T8 and Tspreader). Then I can solve all the five > thermal resistances. However, the results I got seems not very correct. I > use the thermal resistance I got by solving the equation groups to verify a > new power input (which means now I use A and P to calculate T), the computed > T doesn't match the Temperature given by HotSpot simulation. What's wrong > with my method? Anything I missed? > There are multiple nodes in the heat spreader and heat sink. They are not treated as having a single temperature due to accuracy reasons. Hope this helps, -Wei > > Thanks very much. > Neo > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100407/4e45ebf4/attachment.html From yao1 at wisc.edu Wed Apr 7 17:29:40 2010 From: yao1 at wisc.edu (Chunhua Yao) Date: Wed, 07 Apr 2010 16:29:40 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: References: Message-ID: <4BBCF944.1010807@wisc.edu> Hi, Wei Thanks very much for the reply. About my question 3, I understand that there are multiple nodes in the heat spreader and heat sink. So in my computation, the Tspreader I use is hsp_node5 temperature provided by HotSpot results. Even there are multiple nodes in the heat spreader, I assume that there is only one vertical thermal resistance connected between node5 and hsp_node5. There is no resistance between node5 and other portions of the heat spreader, is that right? Basically, is my five-resistance assumption reasonable? Thanks again, Neo On 4/7/2010 4:02 PM, Wei Huang wrote: > > > 1. If only steady state temperature is interested, then the term > C*(dT/dt) becomes zero, the thermal equation can be simplified as > A*T + P = 0, where A is the thermal conductance matrix, T is the > steady state temperature and P is power consumption matrix. (If > the ambient temperature is not 0, I guess the equation becomes A*T > + P + H = 0, where H is the boundary condition matrix.) Is that > the way how the steady state temperature is computed? > (another question: what's the value for P to compute steady state > temperature? Is it the last power value in the power trace? Or is > it the average of all previous power values?) > > > It is the average of power trace entries. > > > 2. Is there a way I can output the value of the A (thermal > conductance) matrix? > > > Yes you can, but not directly from a built-in function call. In some > functions like populate_R(), all the conductance values between two > nodes are calculated. You can dump the matrix from there. > > > 3. On the other hand, can I compute the A matrix using T and P > matrix (Still for steady state temperature)? Here is what I did: > Assume a 3x3 grid floorplan, the blocks are named from node1~node9 > and node5 is the center one. For node5, there should be five > equivalent thermal resistance based on the RC model: 4 lateral > resistances to the neighbor blocks(node2, node4, node6, and > node8), R52, R54, R56, R58, and one vertical resistance to the > heat spreader above it, R5s. Then based on the thermal balance > equation of node5, the following relation should be true: > > (T5-T2)/R52 + (T5-T4)/R54 + (T5-T6)/R56 + (T5-T8)/R58 - > (T5-Tspreader)/R5s = P5 > > There are five resistances, which means five unknowns and five > equations are needed to solve them. So, if I give 5 different > powers on node5(powers for other nodes are also given), then I can > get five groups of temperature values of (T2, T4, T5, T6, T8 and > Tspreader). Then I can solve all the five thermal resistances. > However, the results I got seems not very correct. I use the > thermal resistance I got by solving the equation groups to verify > a new power input (which means now I use A and P to calculate T), > the computed T doesn't match the Temperature given by HotSpot > simulation. What's wrong with my method? Anything I missed? > > > There are multiple nodes in the heat spreader and heat sink. They are > not treated as having a single temperature due to accuracy reasons. > > Hope this helps, > > -Wei > > > Thanks very much. > Neo > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100407/e7e9536e/attachment.html From wh6p at virginia.edu Wed Apr 7 18:42:24 2010 From: wh6p at virginia.edu (Wei Huang) Date: Wed, 7 Apr 2010 17:42:24 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: <4BBCF944.1010807@wisc.edu> References: <4BBCF944.1010807@wisc.edu> Message-ID: But there are resistances connecting other silicon nodes to heat spreader, and it seems you didn't consider that in your method. Basically, you assume the only heat conduction path from silicon to spreader is via node 5, which is not correct. -Wei On Wed, Apr 7, 2010 at 4:29 PM, Chunhua Yao wrote: > Hi, Wei > > Thanks very much for the reply. > > About my question 3, I understand that there are multiple nodes in the heat > spreader and heat sink. So in my computation, the Tspreader I use is > hsp_node5 temperature provided by HotSpot results. Even there are multiple > nodes in the heat spreader, I assume that there is only one vertical thermal > resistance connected between node5 and hsp_node5. There is no resistance > between node5 and other portions of the heat spreader, is that right? > Basically, is my five-resistance assumption reasonable? > > Thanks again, > Neo > > > > On 4/7/2010 4:02 PM, Wei Huang wrote: > > >> 1. If only steady state temperature is interested, then the term C*(dT/dt) >> becomes zero, the thermal equation can be simplified as A*T + P = 0, where A >> is the thermal conductance matrix, T is the steady state temperature and P >> is power consumption matrix. (If the ambient temperature is not 0, I guess >> the equation becomes A*T + P + H = 0, where H is the boundary condition >> matrix.) Is that the way how the steady state temperature is computed? >> (another question: what's the value for P to compute steady state >> temperature? Is it the last power value in the power trace? Or is it the >> average of all previous power values?) >> > > It is the average of power trace entries. > >> >> 2. Is there a way I can output the value of the A (thermal conductance) >> matrix? >> > > Yes you can, but not directly from a built-in function call. In some > functions like populate_R(), all the conductance values between two nodes > are calculated. You can dump the matrix from there. > >> >> 3. On the other hand, can I compute the A matrix using T and P matrix >> (Still for steady state temperature)? Here is what I did: >> Assume a 3x3 grid floorplan, the blocks are named from node1~node9 and >> node5 is the center one. For node5, there should be five equivalent thermal >> resistance based on the RC model: 4 lateral resistances to >> the neighbor blocks(node2, node4, node6, and node8), R52, R54, R56, R58, >> and one vertical resistance to the heat spreader above it, R5s. Then based >> on the thermal balance equation of node5, the following relation should be >> true: >> >> (T5-T2)/R52 + (T5-T4)/R54 + (T5-T6)/R56 + (T5-T8)/R58 - >> (T5-Tspreader)/R5s = P5 >> >> There are five resistances, which means five unknowns and five equations >> are needed to solve them. So, if I give 5 different powers on node5(powers >> for other nodes are also given), then I can get five groups of temperature >> values of (T2, T4, T5, T6, T8 and Tspreader). Then I can solve all the five >> thermal resistances. However, the results I got seems not very correct. I >> use the thermal resistance I got by solving the equation groups to verify a >> new power input (which means now I use A and P to calculate T), the computed >> T doesn't match the Temperature given by HotSpot simulation. What's wrong >> with my method? Anything I missed? >> > > There are multiple nodes in the heat spreader and heat sink. They are not > treated as having a single temperature due to accuracy reasons. > > Hope this helps, > > -Wei > >> >> Thanks very much. >> Neo >> >> _______________________________________________ >> HotSpot mailing list >> HotSpot at mail.cs.virginia.edu >> http://www.cs.virginia.edu/mailman/listinfo/hotspot >> >> > > _______________________________________________ > HotSpot mailing listHotSpot at mail.cs.virginia.eduhttp://www.cs.virginia.edu/mailman/listinfo/hotspot > > > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100407/00631d0f/attachment-0001.html From yao1 at wisc.edu Wed Apr 7 18:58:52 2010 From: yao1 at wisc.edu (Chunhua Yao) Date: Wed, 07 Apr 2010 17:58:52 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: References: <4BBCF944.1010807@wisc.edu> Message-ID: <4BBD0E2C.5000104@wisc.edu> Actually, I do assume that each node will have a vertical thermal resistance to the portion of heat spreader above it. However, in my computation, I only care about node 5, the thermal balance equation I used is just for node 5, but not for all nodes. And the heat spreader temperature I used is hsp_node5, which means the temperature of the portion of heat spreader above node 5. (Also, all the temperature values are from HotSpot simulation so I did not make any assumption on temperature computation.) For node5, I assume there are five equivalent thermal resistances: 4 lateral resistances to neighbor nodes and one vertical resistances to heat spreader, does that match the model used in HotSpot? Thanks very much. Neo On 4/7/2010 5:42 PM, Wei Huang wrote: > But there are resistances connecting other silicon nodes to heat > spreader, and it seems you didn't consider that in your method. > Basically, you assume the only heat conduction path from silicon to > spreader is via node 5, which is not correct. > > -Wei > > On Wed, Apr 7, 2010 at 4:29 PM, Chunhua Yao > wrote: > > Hi, Wei > > Thanks very much for the reply. > > About my question 3, I understand that there are multiple nodes in > the heat spreader and heat sink. So in my computation, the > Tspreader I use is hsp_node5 temperature provided by HotSpot > results. Even there are multiple nodes in the heat spreader, I > assume that there is only one vertical thermal resistance > connected between node5 and hsp_node5. There is no resistance > between node5 and other portions of the heat spreader, is that > right? Basically, is my five-resistance assumption reasonable? > > Thanks again, > Neo > > > > On 4/7/2010 4:02 PM, Wei Huang wrote: >> >> >> 1. If only steady state temperature is interested, then the >> term C*(dT/dt) becomes zero, the thermal equation can be >> simplified as A*T + P = 0, where A is the thermal conductance >> matrix, T is the steady state temperature and P is power >> consumption matrix. (If the ambient temperature is not 0, I >> guess the equation becomes A*T + P + H = 0, where H is >> the boundary condition matrix.) Is that the way how the >> steady state temperature is computed? (another question: >> what's the value for P to compute steady state temperature? >> Is it the last power value in the power trace? Or is it the >> average of all previous power values?) >> >> >> It is the average of power trace entries. >> >> >> 2. Is there a way I can output the value of the A (thermal >> conductance) matrix? >> >> >> Yes you can, but not directly from a built-in function call. In >> some functions like populate_R(), all the conductance values >> between two nodes are calculated. You can dump the matrix from >> there. >> >> >> 3. On the other hand, can I compute the A matrix using T and >> P matrix (Still for steady state temperature)? Here is what I >> did: >> Assume a 3x3 grid floorplan, the blocks are named from >> node1~node9 and node5 is the center one. For node5, there >> should be five equivalent thermal resistance based on the RC >> model: 4 lateral resistances to the neighbor blocks(node2, >> node4, node6, and node8), R52, R54, R56, R58, and one >> vertical resistance to the heat spreader above it, R5s. Then >> based on the thermal balance equation of node5, the following >> relation should be true: >> >> (T5-T2)/R52 + (T5-T4)/R54 + (T5-T6)/R56 + (T5-T8)/R58 - >> (T5-Tspreader)/R5s = P5 >> >> There are five resistances, which means five unknowns and >> five equations are needed to solve them. So, if I give 5 >> different powers on node5(powers for other nodes are also >> given), then I can get five groups of temperature values of >> (T2, T4, T5, T6, T8 and Tspreader). Then I can solve all the >> five thermal resistances. However, the results I got seems >> not very correct. I use the thermal resistance I got by >> solving the equation groups to verify a new power input >> (which means now I use A and P to calculate T), the computed >> T doesn't match the Temperature given by HotSpot simulation. >> What's wrong with my method? Anything I missed? >> >> >> There are multiple nodes in the heat spreader and heat sink. They >> are not treated as having a single temperature due to accuracy >> reasons. >> >> Hope this helps, >> >> -Wei >> >> >> Thanks very much. >> Neo >> >> _______________________________________________ >> HotSpot mailing list >> HotSpot at mail.cs.virginia.edu >> >> http://www.cs.virginia.edu/mailman/listinfo/hotspot >> >> >> >> _______________________________________________ >> HotSpot mailing list >> HotSpot at mail.cs.virginia.edu >> http://www.cs.virginia.edu/mailman/listinfo/hotspot >> > > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100407/58265710/attachment.html From wh6p at virginia.edu Thu Apr 8 08:01:48 2010 From: wh6p at virginia.edu (Wei Huang) Date: Thu, 8 Apr 2010 07:01:48 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: <4BBD0E2C.5000104@wisc.edu> References: <4BBCF944.1010807@wisc.edu> <4BBD0E2C.5000104@wisc.edu> Message-ID: I think in your equation, you have a "minus" sign before the term calculating power from node 5 to the heat spreader. I think it should be "plus", since it is similar to other terms as "heat flowing out of Node5". The only heat flowing into node5 is P5, which is on the other side of the equation. -Wei On Wed, Apr 7, 2010 at 5:58 PM, Chunhua Yao wrote: > Actually, I do assume that each node will have a vertical thermal > resistance to the portion of heat spreader above it. However, in my > computation, I only care about node 5, the thermal balance equation I used > is just for node 5, but not for all nodes. And the heat spreader temperature > I used is hsp_node5, which means the temperature of the portion of heat > spreader above node 5. (Also, all the temperature values are from HotSpot > simulation so I did not make any assumption on temperature computation.) For > node5, I assume there are five equivalent thermal resistances: 4 lateral > resistances to neighbor nodes and one vertical resistances to heat > spreader, does that match the model used in HotSpot? > > Thanks very much. > > Neo > > > On 4/7/2010 5:42 PM, Wei Huang wrote: > > But there are resistances connecting other silicon nodes to heat spreader, > and it seems you didn't consider that in your method. Basically, you assume > the only heat conduction path from silicon to spreader is via node 5, which > is not correct. > > -Wei > > On Wed, Apr 7, 2010 at 4:29 PM, Chunhua Yao wrote: > >> Hi, Wei >> >> Thanks very much for the reply. >> >> About my question 3, I understand that there are multiple nodes in the >> heat spreader and heat sink. So in my computation, the Tspreader I use is >> hsp_node5 temperature provided by HotSpot results. Even there are multiple >> nodes in the heat spreader, I assume that there is only one vertical thermal >> resistance connected between node5 and hsp_node5. There is no resistance >> between node5 and other portions of the heat spreader, is that right? >> Basically, is my five-resistance assumption reasonable? >> >> Thanks again, >> Neo >> >> >> >> On 4/7/2010 4:02 PM, Wei Huang wrote: >> >> >>> 1. If only steady state temperature is interested, then the term >>> C*(dT/dt) becomes zero, the thermal equation can be simplified as A*T + P = >>> 0, where A is the thermal conductance matrix, T is the steady state >>> temperature and P is power consumption matrix. (If the ambient temperature >>> is not 0, I guess the equation becomes A*T + P + H = 0, where H is >>> the boundary condition matrix.) Is that the way how the steady state >>> temperature is computed? (another question: what's the value for P to >>> compute steady state temperature? Is it the last power value in the power >>> trace? Or is it the average of all previous power values?) >>> >> >> It is the average of power trace entries. >> >>> >>> 2. Is there a way I can output the value of the A (thermal conductance) >>> matrix? >>> >> >> Yes you can, but not directly from a built-in function call. In some >> functions like populate_R(), all the conductance values between two nodes >> are calculated. You can dump the matrix from there. >> >>> >>> 3. On the other hand, can I compute the A matrix using T and P matrix >>> (Still for steady state temperature)? Here is what I did: >>> Assume a 3x3 grid floorplan, the blocks are named from node1~node9 and >>> node5 is the center one. For node5, there should be five equivalent thermal >>> resistance based on the RC model: 4 lateral resistances to >>> the neighbor blocks(node2, node4, node6, and node8), R52, R54, R56, R58, >>> and one vertical resistance to the heat spreader above it, R5s. Then based >>> on the thermal balance equation of node5, the following relation should be >>> true: >>> >>> (T5-T2)/R52 + (T5-T4)/R54 + (T5-T6)/R56 + (T5-T8)/R58 - >>> (T5-Tspreader)/R5s = P5 >>> >>> There are five resistances, which means five unknowns and five equations >>> are needed to solve them. So, if I give 5 different powers on node5(powers >>> for other nodes are also given), then I can get five groups of temperature >>> values of (T2, T4, T5, T6, T8 and Tspreader). Then I can solve all the five >>> thermal resistances. However, the results I got seems not very correct. I >>> use the thermal resistance I got by solving the equation groups to verify a >>> new power input (which means now I use A and P to calculate T), the computed >>> T doesn't match the Temperature given by HotSpot simulation. What's wrong >>> with my method? Anything I missed? >>> >> >> There are multiple nodes in the heat spreader and heat sink. They are not >> treated as having a single temperature due to accuracy reasons. >> >> Hope this helps, >> >> -Wei >> >>> >>> Thanks very much. >>> Neo >>> >>> _______________________________________________ >>> HotSpot mailing list >>> HotSpot at mail.cs.virginia.edu >>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>> >>> >> >> _______________________________________________ >> HotSpot mailing listHotSpot at mail.cs.virginia.eduhttp://www.cs.virginia.edu/mailman/listinfo/hotspot >> >> >> >> _______________________________________________ >> HotSpot mailing list >> HotSpot at mail.cs.virginia.edu >> http://www.cs.virginia.edu/mailman/listinfo/hotspot >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100408/2fb46061/attachment-0001.html From yao1 at wisc.edu Thu Apr 8 12:44:07 2010 From: yao1 at wisc.edu (Chunhua Yao) Date: Thu, 08 Apr 2010 11:44:07 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: References: <4BBCF944.1010807@wisc.edu> <4BBD0E2C.5000104@wisc.edu> Message-ID: <4BBE07D7.8040507@wisc.edu> In my first simulation, I did use "plus" signs for all terms. However, it came out that the R5s is a negative value. (In some cases, some of the other resistances are also computed be negative values.) Then I change the "plus" to "minus". My understanding is: if temperature of neighbor node, e.g. T2, is greater than T5, then the heat flow is inbound to node5. On the other hand, if T2 < T5, the heat flow is outbound from node5. Actually, I also try the following two experiments: 1. I using the absolute value of the temperature difference (i.e. |T5-T2|, |T5-Tspreader| etc.) but I still got resistances of negative values. 2. I set the power for node5 to be much larger than the powers for neighbor nodes, which means that I enforce T5 to be larger than T2, T4, T6, T8 and Tspreader. Then, in the equation , I use "plus" sign for all terms. Unluckily, I still got resistances of negative values.(In this case, R5s seems always to be positive, but other resistance such as R52, R56 become negative.) That really confused me. Also, the solved resistance values changes with different five-power inputs (i.e. different five-group equations). That confused me more. I have thought that the resistances are only depended on the floorplan and no matter what power you run on the floorplan, the resistances should be computed out to be the same. Thanks very much. Neo On 4/8/2010 7:01 AM, Wei Huang wrote: > I think in your equation, you have a "minus" sign before the term > calculating power from node 5 to the heat spreader. I think it should > be "plus", since it is similar to other terms as "heat flowing out of > Node5". The only heat flowing into node5 is P5, which is on the other > side of the equation. > -Wei > > On Wed, Apr 7, 2010 at 5:58 PM, Chunhua Yao > wrote: > > Actually, I do assume that each node will have a vertical thermal > resistance to the portion of heat spreader above it. However, in > my computation, I only care about node 5, the thermal balance > equation I used is just for node 5, but not for all nodes. And the > heat spreader temperature I used is hsp_node5, which means the > temperature of the portion of heat spreader above node 5. (Also, > all the temperature values are from HotSpot simulation so I did > not make any assumption on temperature computation.) For node5, I > assume there are five equivalent thermal resistances: 4 lateral > resistances to neighbor nodes and one vertical resistances to > heat spreader, does that match the model used in HotSpot? > > Thanks very much. > > Neo > > > On 4/7/2010 5:42 PM, Wei Huang wrote: >> But there are resistances connecting other silicon nodes to heat >> spreader, and it seems you didn't consider that in your method. >> Basically, you assume the only heat conduction path from silicon >> to spreader is via node 5, which is not correct. >> >> -Wei >> >> On Wed, Apr 7, 2010 at 4:29 PM, Chunhua Yao > > wrote: >> >> Hi, Wei >> >> Thanks very much for the reply. >> >> About my question 3, I understand that there are multiple >> nodes in the heat spreader and heat sink. So in my >> computation, the Tspreader I use is hsp_node5 temperature >> provided by HotSpot results. Even there are multiple nodes in >> the heat spreader, I assume that there is only one vertical >> thermal resistance connected between node5 and hsp_node5. >> There is no resistance between node5 and other portions of >> the heat spreader, is that right? Basically, is my >> five-resistance assumption reasonable? >> >> Thanks again, >> Neo >> >> >> >> On 4/7/2010 4:02 PM, Wei Huang wrote: >>> >>> >>> 1. If only steady state temperature is interested, then >>> the term C*(dT/dt) becomes zero, the thermal equation >>> can be simplified as A*T + P = 0, where A is the thermal >>> conductance matrix, T is the steady state temperature >>> and P is power consumption matrix. (If the ambient >>> temperature is not 0, I guess the equation becomes A*T + >>> P + H = 0, where H is the boundary condition >>> matrix.) Is that the way how the steady state >>> temperature is computed? (another question: what's the >>> value for P to compute steady state temperature? Is it >>> the last power value in the power trace? Or is it the >>> average of all previous power values?) >>> >>> >>> It is the average of power trace entries. >>> >>> >>> 2. Is there a way I can output the value of the A >>> (thermal conductance) matrix? >>> >>> >>> Yes you can, but not directly from a built-in function call. >>> In some functions like populate_R(), all the conductance >>> values between two nodes are calculated. You can dump the >>> matrix from there. >>> >>> >>> 3. On the other hand, can I compute the A matrix using T >>> and P matrix (Still for steady state temperature)? Here >>> is what I did: >>> Assume a 3x3 grid floorplan, the blocks are named from >>> node1~node9 and node5 is the center one. For node5, >>> there should be five equivalent thermal resistance based >>> on the RC model: 4 lateral resistances to >>> the neighbor blocks(node2, node4, node6, and node8), >>> R52, R54, R56, R58, and one vertical resistance to the >>> heat spreader above it, R5s. Then based on the thermal >>> balance equation of node5, the following relation should >>> be true: >>> >>> (T5-T2)/R52 + (T5-T4)/R54 + (T5-T6)/R56 + (T5-T8)/R58 - >>> (T5-Tspreader)/R5s = P5 >>> >>> There are five resistances, which means five unknowns >>> and five equations are needed to solve them. So, if I >>> give 5 different powers on node5(powers for other nodes >>> are also given), then I can get five groups of >>> temperature values of (T2, T4, T5, T6, T8 and >>> Tspreader). Then I can solve all the five thermal >>> resistances. However, the results I got seems not very >>> correct. I use the thermal resistance I got by solving >>> the equation groups to verify a new power input (which >>> means now I use A and P to calculate T), the computed T >>> doesn't match the Temperature given by HotSpot >>> simulation. What's wrong with my method? Anything I missed? >>> >>> >>> There are multiple nodes in the heat spreader and heat sink. >>> They are not treated as having a single temperature due to >>> accuracy reasons. >>> >>> Hope this helps, >>> >>> -Wei >>> >>> >>> Thanks very much. >>> Neo >>> >>> _______________________________________________ >>> HotSpot mailing list >>> HotSpot at mail.cs.virginia.edu >>> >>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>> >>> >>> >>> _______________________________________________ >>> HotSpot mailing list >>> HotSpot at mail.cs.virginia.edu >>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>> >> >> >> _______________________________________________ >> HotSpot mailing list >> HotSpot at mail.cs.virginia.edu >> >> http://www.cs.virginia.edu/mailman/listinfo/hotspot >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100408/3b7fcbd3/attachment.html From wh6p at virginia.edu Thu Apr 8 12:58:46 2010 From: wh6p at virginia.edu (Wei Huang) Date: Thu, 8 Apr 2010 11:58:46 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: <4BBE07D7.8040507@wisc.edu> References: <4BBCF944.1010807@wisc.edu> <4BBD0E2C.5000104@wisc.edu> <4BBE07D7.8040507@wisc.edu> Message-ID: It seems you overall approach should reach the right resistance values (although I don't know why you want to do this, since all the resistances are calculated in the code). did you omit the TIM layer between silicon and heatspreader? have you doublechecked you floorplan file (all blocks are well aligned without overlap, etc), and have you doublechecked your silicon size is less than spreader, which should be less than heatsink? There are just too many factors to make the thermal results not correct. -Wei On Thu, Apr 8, 2010 at 11:44 AM, Chunhua Yao wrote: > In my first simulation, I did use "plus" signs for all terms. However, it > came out that the R5s is a negative value. (In some cases, some of the other > resistances are also computed be negative values.) Then I change the "plus" > to "minus". My understanding is: if temperature of neighbor node, e.g. T2, > is greater than T5, then the heat flow is inbound to node5. On the other > hand, if T2 < T5, the heat flow is outbound from node5. > > Actually, I also try the following two experiments: > 1. I using the absolute value of the temperature difference (i.e. |T5-T2|, > |T5-Tspreader| etc.) but I still got resistances of negative values. > 2. I set the power for node5 to be much larger than the powers for neighbor > nodes, which means that I enforce T5 to be larger than T2, T4, T6, T8 and > Tspreader. Then, in the equation , I use "plus" sign for all terms. > Unluckily, I still got resistances of negative values.(In this case, R5s > seems always to be positive, but other resistance such as R52, R56 become > negative.) That really confused me. Also, the solved resistance values > changes with different five-power inputs (i.e. different five-group > equations). That confused me more. I have thought that the resistances are > only depended on the floorplan and no matter what power you run on the > floorplan, the resistances should be computed out to be the same. > > Thanks very much. > Neo > > > > On 4/8/2010 7:01 AM, Wei Huang wrote: > > I think in your equation, you have a "minus" sign before the term > calculating power from node 5 to the heat spreader. I think it should be > "plus", since it is similar to other terms as "heat flowing out of Node5". > The only heat flowing into node5 is P5, which is on the other side of the > equation. > > -Wei > > On Wed, Apr 7, 2010 at 5:58 PM, Chunhua Yao wrote: > >> Actually, I do assume that each node will have a vertical thermal >> resistance to the portion of heat spreader above it. However, in my >> computation, I only care about node 5, the thermal balance equation I used >> is just for node 5, but not for all nodes. And the heat spreader temperature >> I used is hsp_node5, which means the temperature of the portion of heat >> spreader above node 5. (Also, all the temperature values are from HotSpot >> simulation so I did not make any assumption on temperature computation.) For >> node5, I assume there are five equivalent thermal resistances: 4 lateral >> resistances to neighbor nodes and one vertical resistances to heat >> spreader, does that match the model used in HotSpot? >> >> Thanks very much. >> >> Neo >> >> >> On 4/7/2010 5:42 PM, Wei Huang wrote: >> >> But there are resistances connecting other silicon nodes to heat spreader, >> and it seems you didn't consider that in your method. Basically, you assume >> the only heat conduction path from silicon to spreader is via node 5, which >> is not correct. >> >> -Wei >> >> On Wed, Apr 7, 2010 at 4:29 PM, Chunhua Yao wrote: >> >>> Hi, Wei >>> >>> Thanks very much for the reply. >>> >>> About my question 3, I understand that there are multiple nodes in the >>> heat spreader and heat sink. So in my computation, the Tspreader I use is >>> hsp_node5 temperature provided by HotSpot results. Even there are multiple >>> nodes in the heat spreader, I assume that there is only one vertical thermal >>> resistance connected between node5 and hsp_node5. There is no resistance >>> between node5 and other portions of the heat spreader, is that right? >>> Basically, is my five-resistance assumption reasonable? >>> >>> Thanks again, >>> Neo >>> >>> >>> >>> On 4/7/2010 4:02 PM, Wei Huang wrote: >>> >>> >>>> 1. If only steady state temperature is interested, then the term >>>> C*(dT/dt) becomes zero, the thermal equation can be simplified as A*T + P = >>>> 0, where A is the thermal conductance matrix, T is the steady state >>>> temperature and P is power consumption matrix. (If the ambient temperature >>>> is not 0, I guess the equation becomes A*T + P + H = 0, where H is >>>> the boundary condition matrix.) Is that the way how the steady state >>>> temperature is computed? (another question: what's the value for P to >>>> compute steady state temperature? Is it the last power value in the power >>>> trace? Or is it the average of all previous power values?) >>>> >>> >>> It is the average of power trace entries. >>> >>>> >>>> 2. Is there a way I can output the value of the A (thermal >>>> conductance) matrix? >>>> >>> >>> Yes you can, but not directly from a built-in function call. In some >>> functions like populate_R(), all the conductance values between two nodes >>> are calculated. You can dump the matrix from there. >>> >>>> >>>> 3. On the other hand, can I compute the A matrix using T and P matrix >>>> (Still for steady state temperature)? Here is what I did: >>>> Assume a 3x3 grid floorplan, the blocks are named from node1~node9 and >>>> node5 is the center one. For node5, there should be five equivalent thermal >>>> resistance based on the RC model: 4 lateral resistances to >>>> the neighbor blocks(node2, node4, node6, and node8), R52, R54, R56, R58, >>>> and one vertical resistance to the heat spreader above it, R5s. Then based >>>> on the thermal balance equation of node5, the following relation should be >>>> true: >>>> >>>> (T5-T2)/R52 + (T5-T4)/R54 + (T5-T6)/R56 + (T5-T8)/R58 - >>>> (T5-Tspreader)/R5s = P5 >>>> >>>> There are five resistances, which means five unknowns and five >>>> equations are needed to solve them. So, if I give 5 different powers on >>>> node5(powers for other nodes are also given), then I can get five groups of >>>> temperature values of (T2, T4, T5, T6, T8 and Tspreader). Then I can solve >>>> all the five thermal resistances. However, the results I got seems not very >>>> correct. I use the thermal resistance I got by solving the equation groups >>>> to verify a new power input (which means now I use A and P to calculate T), >>>> the computed T doesn't match the Temperature given by HotSpot simulation. >>>> What's wrong with my method? Anything I missed? >>>> >>> >>> There are multiple nodes in the heat spreader and heat sink. They are not >>> treated as having a single temperature due to accuracy reasons. >>> >>> Hope this helps, >>> >>> -Wei >>> >>>> >>>> Thanks very much. >>>> Neo >>>> >>>> _______________________________________________ >>>> HotSpot mailing list >>>> HotSpot at mail.cs.virginia.edu >>>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>>> >>>> >>> >>> _______________________________________________ >>> HotSpot mailing listHotSpot at mail.cs.virginia.eduhttp://www.cs.virginia.edu/mailman/listinfo/hotspot >>> >>> >>> >>> _______________________________________________ >>> HotSpot mailing list >>> HotSpot at mail.cs.virginia.edu >>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>> >>> >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100408/4e2e340a/attachment-0001.html From yao1 at wisc.edu Fri Apr 9 15:13:50 2010 From: yao1 at wisc.edu (Chunhua Yao) Date: Fri, 09 Apr 2010 14:13:50 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: References: <4BBCF944.1010807@wisc.edu> <4BBD0E2C.5000104@wisc.edu> <4BBE07D7.8040507@wisc.edu> Message-ID: <4BBF7C6E.30108@wisc.edu> Thanks very much for your replies. Now I am trying to dump the thermal conductance matrix. In the temperature_block.c, I dumped the B matrix ( as said in the comments of the code, B*T =Power in steady state). I still have some questions when I look at the values in the B matrix: (I am still use thing 3x3 grid floorplan, NL*n+EXTRA = 9*4 + 12 = 48, so B is a 48x48 matrix, I am attaching the B matrix for your reference.) 1. What do the values in the main diagonal of B matrix mean? For example, B(1,1) = 16.696667, B(5,5) = 16.726667 etc. Is it the equivalent thermal conductance for node i to the ambient? 2. Why B(5,2), B(5,4), B(5,6), B(5,8) are all negative values? I have thought that B(5,2) is the equivalent thermal conductance connected node5 and node2, is that right? B(5,14) is also a big negative value. In my understanding, node14 should be the node in the thermal interface layer that just above node 5 in the silicon layer. Sorry to bother again and thanks again. Neo On 4/8/2010 11:58 AM, Wei Huang wrote: > It seems you overall approach should reach the right resistance values > (although I don't know why you want to do this, since all the > resistances are calculated in the code). > did you omit the TIM layer between silicon and heatspreader? have you > doublechecked you floorplan file (all blocks are well aligned without > overlap, etc), and have you doublechecked your silicon size is less > than spreader, which should be less than heatsink? There are just too > many factors to make the thermal results not correct. > > -Wei > > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: B.txt Url: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100409/1468e4c0/attachment.txt From wh6p at virginia.edu Fri Apr 9 15:34:45 2010 From: wh6p at virginia.edu (Wei Huang) Date: Fri, 9 Apr 2010 14:34:45 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: <4BBF7C6E.30108@wisc.edu> References: <4BBCF944.1010807@wisc.edu> <4BBD0E2C.5000104@wisc.edu> <4BBE07D7.8040507@wisc.edu> <4BBF7C6E.30108@wisc.edu> Message-ID: Hi, If you can write down the full set of equations using basic circuit theory (KCL) for a simpler case (3nodes+ambient), and arrange them in the form of B*T=Power, you'll see where those negative terms are from. Those terms are not necessarily the thermal resistances/conductances themselves. (I think this line of question is getting off the track of general interest of the mailing group.) -Wei On Fri, Apr 9, 2010 at 2:13 PM, Chunhua Yao wrote: > Thanks very much for your replies. > > Now I am trying to dump the thermal conductance matrix. In the > temperature_block.c, I dumped the B matrix ( as said in the comments of the > code, B*T =Power in steady state). I still have some questions when I look > at the values in the B matrix: > (I am still use thing 3x3 grid floorplan, NL*n+EXTRA = 9*4 + 12 = 48, so B > is a 48x48 matrix, I am attaching the B matrix for your reference.) > > 1. What do the values in the main diagonal of B matrix mean? For example, > B(1,1) = 16.696667, B(5,5) = 16.726667 etc. Is it the equivalent thermal > conductance for node i to the ambient? > 2. Why B(5,2), B(5,4), B(5,6), B(5,8) are all negative values? I have > thought that B(5,2) is the equivalent thermal conductance connected node5 > and node2, is that right? B(5,14) is also a big negative value. In my > understanding, node14 should be the node in the thermal interface layer that > just above node 5 in the silicon layer. > > Sorry to bother again and thanks again. > > Neo > > > > > On 4/8/2010 11:58 AM, Wei Huang wrote: > >> It seems you overall approach should reach the right resistance values >> (although I don't know why you want to do this, since all the resistances >> are calculated in the code). >> did you omit the TIM layer between silicon and heatspreader? have you >> doublechecked you floorplan file (all blocks are well aligned without >> overlap, etc), and have you doublechecked your silicon size is less than >> spreader, which should be less than heatsink? There are just too many >> factors to make the thermal results not correct. >> >> -Wei >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100409/fcbfd9b4/attachment-0001.html From wh6p at virginia.edu Fri Apr 9 18:48:12 2010 From: wh6p at virginia.edu (Wei Huang) Date: Fri, 9 Apr 2010 17:48:12 -0500 Subject: [Hotspot] Thermal conductance In-Reply-To: <4BBFA6D2.3010804@wisc.edu> References: <4BBCF944.1010807@wisc.edu> <4BBD0E2C.5000104@wisc.edu> <4BBE07D7.8040507@wisc.edu> <4BBF7C6E.30108@wisc.edu> <4BBFA6D2.3010804@wisc.edu> Message-ID: Glad to know you have it figured out! There is nothing wrong to be an intensive HotSpot hacker. After all, that is why we provide the source code in the first place. Hope it has been helpful to your research and/or course work. Regards, -Wei On Fri, Apr 9, 2010 at 5:14 PM, Chunhua Yao wrote: > Hi, Wei > > First, I re-check the code and found that the g matrix in > temperature_block.c is actually the thermal conductance/resistance matrix. B > matrix is constructed based on g matrix. > > Second, I figure out my previous problem. There is nothing wrong with the > model, equation, floorplan etc. The problem is just because of rounding > errors. I use T and P to compute B matrix. For T, the steady state > temperature, I use the output of the HosSpot. However, it only gives 2 > decimal digits (i.e. %.2f in the code). When I modified it to output 6 > decimal digits (%.6f), I got the exact conductance values as computed in g > matrix. > > Thanks very much for your kindly replies and hope I did not bother you too > much. > > Best, > Neo > > > > On 4/9/2010 2:34 PM, Wei Huang wrote: > > Hi, > > If you can write down the full set of equations using basic circuit theory > (KCL) for a simpler case (3nodes+ambient), and arrange them in the form of > B*T=Power, you'll see where those negative terms are from. Those terms are > not necessarily the thermal resistances/conductances themselves. > > (I think this line of question is getting off the track of general interest > of the mailing group.) > > -Wei > > On Fri, Apr 9, 2010 at 2:13 PM, Chunhua Yao wrote: > >> Thanks very much for your replies. >> >> Now I am trying to dump the thermal conductance matrix. In the >> temperature_block.c, I dumped the B matrix ( as said in the comments of the >> code, B*T =Power in steady state). I still have some questions when I look >> at the values in the B matrix: >> (I am still use thing 3x3 grid floorplan, NL*n+EXTRA = 9*4 + 12 = 48, so B >> is a 48x48 matrix, I am attaching the B matrix for your reference.) >> >> 1. What do the values in the main diagonal of B matrix mean? For example, >> B(1,1) = 16.696667, B(5,5) = 16.726667 etc. Is it the equivalent thermal >> conductance for node i to the ambient? >> 2. Why B(5,2), B(5,4), B(5,6), B(5,8) are all negative values? I have >> thought that B(5,2) is the equivalent thermal conductance connected node5 >> and node2, is that right? B(5,14) is also a big negative value. In my >> understanding, node14 should be the node in the thermal interface layer that >> just above node 5 in the silicon layer. >> >> Sorry to bother again and thanks again. >> >> Neo >> >> >> >> >> On 4/8/2010 11:58 AM, Wei Huang wrote: >> >>> It seems you overall approach should reach the right resistance values >>> (although I don't know why you want to do this, since all the resistances >>> are calculated in the code). >>> did you omit the TIM layer between silicon and heatspreader? have you >>> doublechecked you floorplan file (all blocks are well aligned without >>> overlap, etc), and have you doublechecked your silicon size is less than >>> spreader, which should be less than heatsink? There are just too many >>> factors to make the thermal results not correct. >>> >>> -Wei >>> >>> >>> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100409/037760c8/attachment.html From mpekiaris at microlab.ntua.gr Tue Apr 20 12:27:11 2010 From: mpekiaris at microlab.ntua.gr (Dimitris Mpekiaris) Date: Tue, 20 Apr 2010 19:27:11 +0300 Subject: [Hotspot] Hotspot configuration parameters question Message-ID: Hello all, We are working with HotSpot 5.0 and we are facing a problem regarding the configuration of the essential Hotspot parameters, regarding heatsink and heat spreader. In perspective, the HotSpot howto provides a typical value of 0.1 K/W for convection resistance, while in a paper of 2005 titled "Monitoring Temperature in FPGA based SoCs" edited by the founders of HotSpot, the authors claim that in order to avoid heatsink, the convection resistance should be 13.9 K/W. However, while we have been trying to increase the respective parameter in the configuration file, the tool does not perform any analysis, but responds a message like "error singular matrix". The tool does not accept any value greater than 0.18 K/W and reports the above error message. Provided that we are performing a power and thermal analysis on a system that is likely to be oriented for an embedded platform, we would like to know how we could simulate such a thermal behavior in HotSpot and whether the assumptions we have made in our configuration about heatsink (and the remaining aspects we should take care of also). Thank you very much in advance, Regards From wh6p at virginia.edu Tue Apr 20 13:19:22 2010 From: wh6p at virginia.edu (Wei Huang) Date: Tue, 20 Apr 2010 12:19:22 -0500 Subject: [Hotspot] Hotspot configuration parameters question In-Reply-To: References: Message-ID: Hi, I just tried with default hotspot files (only changed r_convec to 13.9 in hotspot.config), and it worked as expected without the error you described. Can you also try this and see if it works for you? Some other common constraints when using HotSpot are: - blocks in your floorplan file must not have overlapped areas, nor blank spaces not defined in floorplan - heat spreader size must be bigger than silicon chip - heat sink size must be bigger than heat spreader please doublecheck these. -Wei On Tue, Apr 20, 2010 at 11:27 AM, Dimitris Mpekiaris < mpekiaris at microlab.ntua.gr> wrote: > Hello all, > We are working with HotSpot 5.0 and we are facing a problem regarding the > configuration of the essential Hotspot parameters, regarding heatsink and > heat spreader. In perspective, the HotSpot howto provides a typical value of > 0.1 K/W for convection resistance, while in a paper of 2005 titled > "Monitoring Temperature in FPGA based SoCs" edited by the founders of > HotSpot, the authors claim that in order to avoid heatsink, the convection > resistance should be 13.9 K/W. However, while we have been trying to > increase the respective parameter in the configuration file, the tool does > not perform any analysis, but responds a message like "error singular > matrix". The tool does not accept any value greater than 0.18 K/W and > reports the above error message. > Provided that we are performing a power and thermal analysis on a system > that is likely to be oriented for an embedded platform, we would like to > know how we could simulate such a thermal behavior in HotSpot and whether > the assumptions we have made in our configuration about heatsink (and the > remaining aspects we should take care of also). > > Thank you very much in advance, > Regards > > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100420/750a7d95/attachment.html From xristos86 at gmail.com Wed Apr 21 17:56:03 2010 From: xristos86 at gmail.com (Christos Papameletis) Date: Thu, 22 Apr 2010 00:56:03 +0300 Subject: [Hotspot] Hotspot configuration parameters question Message-ID: Thank you for your fast response Wei! We didn't know about the first constraint you mentioned, but we fixed it, so, now HotSpot can be run for many more r_convec values without problems. The other 2 constraints were already satisfied. But we would also like to know how we can simulate the absence of a heatsink for our system. Currently we have been trying to achieve that by increasing the value of r_convec, but this is clearly not enough, as only minor temperature differences can be observed. So, are there any other settings/parameters that can help us achieve such a thermal behavior and if there are how should they be configured? Thank you once again! -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100422/ba931ec2/attachment.html From wh6p at virginia.edu Wed Apr 21 18:28:40 2010 From: wh6p at virginia.edu (Wei Huang) Date: Wed, 21 Apr 2010 17:28:40 -0500 Subject: [Hotspot] Hotspot configuration parameters question In-Reply-To: References: Message-ID: Glad I helped! A quick way to emulate the case without heatsink (and possibly no heatspreader either) is to set the thickness of heatsink and heat spreader to some small values, like a few tens of micrometers, so that their roles in the heat transfer path are negligible. You don't want to set them to zero or tiny numbers since that might cause numerical errors. In the end, what you really want to use in this case is the natural convection configuration in HotSpot-5.0's new package model (see HOW-TO of the HS webpage and the code itself for more information: hotspot.config, package.config, package.h and package.c). This is the case where you want to consider temperature impact on leakage and vice versa. But I would suggest try the first approach, that should get you started fairly quickly with quite accurate results as well. Nobody has yet reported or feedback to us of using the package model, let alone the natural convection package model. So, if you like, you would be the first one to taste the crab! Regards, -Wei On Wed, Apr 21, 2010 at 4:56 PM, Christos Papameletis wrote: > Thank you for your fast response Wei! > > We didn't know about the first constraint you mentioned, but we fixed it, > so, now HotSpot can be run for many more r_convec values without problems. > The other 2 constraints were already satisfied. > But we would also like to know how we can simulate the absence of a > heatsink for our system. > Currently we have been trying to achieve that by increasing the value of > r_convec, but this is clearly not enough, as only minor temperature > differences can be observed. > So, are there any other settings/parameters that can help us achieve such a > thermal behavior and if there are how should they be configured? > > Thank you once again! > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100421/7abc612e/attachment.html From xristos86 at gmail.com Thu Apr 22 06:47:47 2010 From: xristos86 at gmail.com (Christos Papameletis) Date: Thu, 22 Apr 2010 13:47:47 +0300 Subject: [Hotspot] Hotspot configuration parameters question In-Reply-To: References: Message-ID: All right, we are already over our heads in work, so we will try to avoid messing with the new package model, at least for now. So, we have set a high convection resistance value, very low heatspreader and heatsink thickness values and their sides to values that are only marginly larger than our chip. To be more precise, our configuration file looks like this: # chip specs # chip thickness in meters -t_chip 0.0008 # temperature threshold for DTM (kelvin) -thermal_threshold 354.95 # heat sink specs # convection capacitance in J/K -c_convec 140.4 # convection resistance in K/W -r_convec 60.0 # heatsink side in meters -s_sink 0.0025 # heatsink thickness in meters -t_sink 0.00001 # heat spreader specs # spreader side in meters -s_spreader 0.0024 # spreader thickness in meters -t_spreader 0.00001 # interface material specs # interface material thickness in meters -t_interface 2.0e-05 The problem is that we are still getting very low temperature estimations (very close to ambient). This may be because the chip is of an embedded system that has quite low power consumption, namely, the most energy-hungry unit has an average power of about 1.3 mW and many others are far more "economical". But still, shouldn 't the temperature rise after a long time period of operation? Can you think of any other parameters that could help us achieve the effect of an embedded system with poor packaging and cooling? -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100422/4f69d048/attachment.html From skadron at cs.virginia.edu Thu Apr 22 08:58:28 2010 From: skadron at cs.virginia.edu (Kevin Skadron) Date: Thu, 22 Apr 2010 08:58:28 -0400 Subject: [Hotspot] Hotspot configuration parameters question In-Reply-To: References: Message-ID: <4BD047F4.5060708@cs.virginia.edu> A few mW won't have much appreciable change in temperature. As a very rough ballpark, using 2mW and just looking at the heat sink R, we get 0.002 W * 60 K/W = 0.12 K for the steady state delta-T. /K On 4/22/2010 6:47 AM, Christos Papameletis wrote: > All right, we are already over our heads in work, so we will try to > avoid messing with the new package model, at least for now. > > So, we have set a high convection resistance value, very low > heatspreader and heatsink thickness values and their sides to values > that are only marginly larger than our chip. To be more precise, our > configuration file looks like this: > > # chip specs > # chip thickness in meters > -t_chip 0.0008 > # temperature threshold for DTM (kelvin) > -thermal_threshold 354.95 > > # heat sink specs > # convection capacitance in J/K > -c_convec 140.4 > # convection resistance in K/W > -r_convec 60.0 > # heatsink side in meters > -s_sink 0.0025 > # heatsink thickness in meters > -t_sink 0.00001 > > # heat spreader specs > # spreader side in meters > -s_spreader 0.0024 > # spreader thickness in meters > -t_spreader 0.00001 > > # interface material specs > # interface material thickness in meters > -t_interface 2.0e-05 > > The problem is that we are still getting very low temperature > estimations (very close to ambient). This may be because the chip is of > an embedded system that has quite low power consumption, namely, the > most energy-hungry unit has an average power of about 1.3 mW and many > others are far more "economical". > But still, shouldn 't the temperature rise after a long time period of > operation? > Can you think of any other parameters that could help us achieve the > effect of an embedded system with poor packaging and cooling? > > > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot From shervin at ucsd.edu Tue Apr 27 20:20:16 2010 From: shervin at ucsd.edu (Shervin Sharifi) Date: Tue, 27 Apr 2010 20:20:16 -0700 Subject: [Hotspot] Temperature calculation when there is a secondary path? Message-ID: Hi, How does the secondary path affect calculation of the temperature? Is there any document explaining how the temperature calculation is different when there is a secondary path? Why this is not supported when we have a 3D chip? Shervin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100427/49e5ba06/attachment.html From wh6p at virginia.edu Wed Apr 28 06:37:01 2010 From: wh6p at virginia.edu (Wei Huang) Date: Wed, 28 Apr 2010 08:37:01 -0500 Subject: [Hotspot] Temperature calculation when there is a secondary path? In-Reply-To: References: Message-ID: > > > How does the secondary path affect calculation of the temperature? Is > there any document explaining how the temperature calculation is different > when there is a secondary path? > if you use forced air cooling with heatsink, then the impact of secondary path is likely negligible. The calculation is not much different, just add more layers in the opposite side of silicon layer and costruct and solve thermal RC network for those layers as well. > Why this is not supported when we have a 3D chip? > That would be a good extra feature to support in future release. But with 3D chips, heatsink, thermal vias and possibly microchannel cooling make the inclusion of secondary path less important. -Wei > > Shervin > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100428/1dead74c/attachment.html From shervin at ucsd.edu Wed Apr 28 07:36:20 2010 From: shervin at ucsd.edu (Shervin Sharifi) Date: Wed, 28 Apr 2010 07:36:20 -0700 Subject: [Hotspot] Temperature calculation when there is a secondary path? In-Reply-To: References: Message-ID: Thank you for your reply. I understand that it might be of less importance in 3D chips which have heatsink and micro-channel cooling. But it won't be negligible in 3D chips for embedded market such as cell phone which use natural convection. My question is that is there a major technical restriction in having 3D and secondary path simultaneously with HotSpot? Or it is just a matter of adding new code to support it? In other words, I want to see if I could implement it by myself. Another question is about natural convection. When natural convection is used and transient temperature is calculated, it seems that at any cycle, the value of thermal resistances are changed based on the average heat sink temperature. What's the reason? Thanks Shervin On Wed, Apr 28, 2010 at 6:37 AM, Wei Huang wrote: > >> How does the secondary path affect calculation of the temperature? Is >> there any document explaining how the temperature calculation is different >> when there is a secondary path? >> > > if you use forced air cooling with heatsink, then the impact of secondary > path is likely negligible. The calculation is not much different, just add > more layers in the opposite side of silicon layer and costruct and solve > thermal RC network for those layers as well. > > >> Why this is not supported when we have a 3D chip? >> > > That would be a good extra feature to support in future release. But with > 3D chips, heatsink, thermal vias and possibly microchannel cooling make the > inclusion of secondary path less important. > > -Wei > >> >> Shervin >> >> _______________________________________________ >> HotSpot mailing list >> HotSpot at mail.cs.virginia.edu >> http://www.cs.virginia.edu/mailman/listinfo/hotspot >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100428/a8e39e74/attachment.html From wh6p at virginia.edu Wed Apr 28 07:53:53 2010 From: wh6p at virginia.edu (Wei Huang) Date: Wed, 28 Apr 2010 09:53:53 -0500 Subject: [Hotspot] Temperature calculation when there is a secondary path? In-Reply-To: References: Message-ID: On Wed, Apr 28, 2010 at 9:36 AM, Shervin Sharifi wrote: > Thank you for your reply. > > I understand that it might be of less importance in 3D chips which have > heatsink and micro-channel cooling. But it won't be negligible in 3D chips > for embedded market such as cell phone which use natural convection. > My question is that is there a major technical restriction in having 3D and > secondary path simultaneously with HotSpot? Or it is just a matter of adding > new code to support it? In other words, I want to see if I could implement > it by myself. > definitely you can add it for 3D, there is nothing preventing people from doing it. We didn't explicitly include it due to the lack of manpower and time, and the less importance for consideration (only my opinion, might turn out to be wrong). If you do successfully add it and are willing to share it to the community, we would be happy to provide a link on HotSpot website and acknowledge you as a contributor. > > Another question is about natural convection. When natural convection is > used and transient temperature is calculated, it seems that at any cycle, > the value of thermal resistances are changed based on the average heat sink > temperature. What's the reason? > In convective heat transfer (esp natural convection), the surface heat transfer coefficient changes with the surface temperature. It is intuitive that the hotter the surface is relative to ambient, the more natural convection there would be. Seems like you are using our new package model/natural convection model, please let us know your experience with it and any suggestions to improve it. -Wei > Thanks > Shervin > > > > > On Wed, Apr 28, 2010 at 6:37 AM, Wei Huang wrote: > >> >>> How does the secondary path affect calculation of the temperature? Is >>> there any document explaining how the temperature calculation is different >>> when there is a secondary path? >>> >> >> if you use forced air cooling with heatsink, then the impact of secondary >> path is likely negligible. The calculation is not much different, just add >> more layers in the opposite side of silicon layer and costruct and solve >> thermal RC network for those layers as well. >> >> >>> Why this is not supported when we have a 3D chip? >>> >> >> That would be a good extra feature to support in future release. But with >> 3D chips, heatsink, thermal vias and possibly microchannel cooling make the >> inclusion of secondary path less important. >> >> -Wei >> >>> >>> Shervin >>> >>> _______________________________________________ >>> HotSpot mailing list >>> HotSpot at mail.cs.virginia.edu >>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>> >>> >> > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100428/a30dd086/attachment.html From jcebrian at ditec.um.es Thu Apr 29 06:37:46 2010 From: jcebrian at ditec.um.es (=?ISO-8859-1?Q?Juan_Manuel_Cebri=E1n_Gonz=E1lez?=) Date: Thu, 29 Apr 2010 15:37:46 +0200 Subject: [Hotspot] Question about hotfloorplan Message-ID: Hello. I've been working on some description files for a set of processors, scaling technologies etc for 2 cores, 4 cores... When i tried to build the floorplans using this tool i get some weird results. While the area is been optimized, the connectivity specified in the .desc file seems to be completely ignored. I get an isolated ICache in the middle of the chip and other similar results. Then i looked at the ev6.flp.orig you provided and it also completely ignores the connectivity info from the .desc file (i.e. DTB LdStQ 1) both structures should be adjacent, but they are not. Here are the connectivity and the generated floorplan. # Connectivity information # Line format \t\t # Core 0 IntExec_c0_ ROB_c0_ 1 Bpred_c0_ TLB_c0_ 1 Bpred_c0_ Icache_c0_ 1 Dcache_c0_ LdStQ_c0_ 1 ROB_c0_ IntReg_c0_ 1 TLB_c0_ LdStQ_c0_ 1 AluMap_c0_ LdStQ_c0_ 1 FPAlu_c0_ ROB_c0_ 1 Dcache_c0_ L2_c0_ 1 Icache_c0_ L2_c0_ 1 AluMap_c0_ ROB_c0_ 1 ROB_c0_ FPReg_c0_ 1 # Core 1 IntExec_c1_ ROB_c1_ 1 Bpred_c1_ TLB_c1_ 1 Bpred_c1_ Icache_c1_ 1 Dcache_c1_ LdStQ_c1_ 1 ROB_c1_ IntReg_c1_ 1 TLB_c1_ LdStQ_c1_ 1 AluMap_c1_ LdStQ_c1_ 1 FPAlu_c1_ ROB_c1_ 1 Dcache_c1_ L2_c1_ 1 Icache_c1_ L2_c1_ 1 AluMap_c1_ ROB_c1_ 1 ROB_c1_ FPReg_c1_ 1 #L2 is shared L2_c0_ L2_c1_ 1 And the output (picture) http://skywalker.inf.um.es/~jcebrian/mi_procesador_2p_8kbpred.pdf Is there something wrong with the tool or i am misunderstanding the "connectivity" meaning from the .desc file? (i understand that if two structures are "connected" they should be adjacent, or at least as close as possible (this does not happen in my 2-Core output). Thank you in advance. Best, Juan Manuel. -- --------------------------------------------- Juan Manuel Cebri?n Gonz?lez University of Murcia, Spain http://skywalker.inf.um.es/~jcebrian/ --------------------------------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100429/3aa6f898/attachment.html From bochen.wu at gmail.com Thu Apr 29 18:58:26 2010 From: bochen.wu at gmail.com (Bo Chen Wu) Date: Thu, 29 Apr 2010 21:58:26 -0400 Subject: [Hotspot] Debug the source code In-Reply-To: References: Message-ID: Hi Wei, I read two of the research papers you have upload on the HoSpot website. In the papers, you mentioned about use Oil-Silicon and Air-Sink for simulation. I would like to perform the same simulations, do you have any documented simulation steps for these two scenarios? Also, another one of your paper mention about using flp-basic and flp-advance options when perform floor plan optimization using HotSpotFloorPlan, do you have any documented simulation steps that i can borrow? As i mentioned before, I was trying to integrate the micrchannel into 3D thermal simulation. based on the work that is done by David Atienza, he indicated that at each grid cell's total resistance can be calculated using following equation: Rtot = Rcond + Rconv + Rheat = 1 / (Gsi/t + 1/Rb) + A / (h*At) + A / (V*P*cp) where each of the variable are constant. Currently I am looking at using this equation to calculate the steady state temperature. I debugged the HoSpot source code and found out that steady_state_temp(model, overall_power, steady_temp) is used to calculate the steady state temperature. I found the follow function call flows: steady_state_temp -> steady_state_temp_grid -> recursive_multigrid -> set_heuristic_temp -> scaleadd_dvector which it use model->layers.rz as the delta resistance. this is a single value that is used through out the grid cells in the single layer, i was wondering if i change this rz to equal to the total resistance value mention above, will it work? Plus, why the HotSpot uses rz in this calculation? Will it be necessary to create a matrix for each layer to calculate the grid cell's resistance individual? Thank you BoChen Wu On Tue, Apr 6, 2010 at 2:47 PM, Bo Chen Wu wrote: > Hi Wei Huang, > > Thank you very much for your response, I appreciated, Please see my > comments below and please let me know if you have any questions: > > Penn State University > M.S. of Computer Science and Engineering > BoChen Wu > bochen.wu at gmail.com > > On Tue, Apr 6, 2010 at 10:54 AM, Wei Huang wrote: > >> HI Please see below... >> >> On Mon, Apr 5, 2010 at 7:17 PM, Bo Chen Wu wrote: >> >>> Hey guys, >>> >>> I have several questions would like to ask you guys: >>> >>> 1) I just finished running the Hotspot tutorial? I would like to debug to >>> see what is the hotspot actually doing while running it? Can I use visual >>> studio 2008 to debug it? Or do you have a better program to suggest for me >>> to debug the source code? >>> >> >> Our online HOW-TO provides step-by-step instructions on how to compile >> HotSpot in Windows and how to use HotSpot in VC++. >> > [BCW 04/06/2010]: I only saw the HOW-TO provides step-by-step instruction > of how to build the HotSpot, but it did not said how to using VC++ to step > into code to debug and see what each line of code doing. I guess I should > create a project initially in the visual studio 2008 and debug the HotSpot? > Or do you guess another way of stepping through the source code? > >> >>> 2) I notice that hotspot support partial 3-D stacking thermal which only >>> apply for grid model, What is the model which thermal model is the current >>> 3-D stacking thermal model that Hotspot is using, or What kind equation is >>> the Hotspot use to compute the each grid cell's temperature at run time? >>> >> >> I am not sure I understand your question. The grid model is a >> finite-difference model, which updates temperature of one grid cell based >> its neighbors and iterate. >> > [BCW 04/06/2010]: I think you answered partial of my question. based on > what you said above, the finite-different model is basically updated each > cell's temperature based on its neighbors' temperature? My question was what > kind equation or logic was used in this finite-difference model? For > example, does the cell subtract its temperature from the average temperature > of all its neighbor cells? > >> >>> 3) I am currently trying to integrate a 3-D liquid cooling thermal model >>> to the Hotspot, I think the best place of the source for me to change is in >>> the RCutil.c function AK4? is this correct? >>> >> >> This seems a non-trivial hack to HotSpot. I don't have a ready answer for >> you now. But it should be more complicated than just modify the algorithm. >> If you are talking about microchannel cooling, you need to add layers that >> model the microchannels, and also have a good way to model the >> silicon-to-channel convection, and the thermal model for the liquid flow. >> There are some recent papers on how to model 3D u-channel cooling in the >> literature, for example, you can search recent ICCAD papers. >> > [BCW 04/06/2010]: You are right, i plan to use the microchannel cooling > that recently scholars have studied. Also, from the reading the research > papers, i have obtained the model of calculating the total thermal > resistance at each cell level for 3-D stacking using microchannel cooling. > Since HotSpot supports calculating the grid-cell level temperatures, I would > like the integrated the model i found into HotSpot. i think to model the > microchannel, I can just use an extra layer with microchannel floor plan. I > am doing this for my class project. > >> >> Hope this helps. >> >> -Wei >> >>> >>> -- >>> Thank You For Your Time. >>> Bo Chen Wu >>> (646)-861-9905 >>> _______________________________________________ >>> HotSpot mailing list >>> HotSpot at mail.cs.virginia.edu >>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>> >>> >> > > > -- > Thank You For Your Time. > Bo Chen Wu > (646)-861-9905 > -- Thank You For Your Time. Bo Chen Wu The Pennsylvania State University - University Park M.S. of Computer Science and Engineering (646)-861-9905 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100429/a3981b2f/attachment.html From wh6p at virginia.edu Fri Apr 30 06:21:59 2010 From: wh6p at virginia.edu (Wei Huang) Date: Fri, 30 Apr 2010 08:21:59 -0500 Subject: [Hotspot] Debug the source code In-Reply-To: References: Message-ID: Hi Bo, please see below... > I read two of the research papers you have upload on the HoSpot website. In > the papers, you mentioned about use Oil-Silicon and Air-Sink for simulation. > I would like to perform the same simulations, do you have any documented > simulation steps for these two scenarios? > I believe there is a configuration file for the oil-based cooling case, in HotSpot v5.0. > > Also, another one of your paper mention about using flp-basic and > flp-advance options when perform floor plan optimization using > HotSpotFloorPlan, do you have any documented simulation steps that i can > borrow? > I am not very familiar with details of HotFloorplanner, it is developed my another colleague. Once he sees this post, he should be able to help you with this question. > > As i mentioned before, I was trying to integrate the micrchannel into 3D > thermal simulation. based on the work that is done by David Atienza, he > indicated that at each grid cell's total resistance can be calculated using > following equation: > Rtot = Rcond + Rconv + Rheat = 1 / (Gsi/t + 1/Rb) + A / (h*At) + A / > (V*P*cp) where each of the variable are constant. > I am not aware of this work, sounds interesting. Will check it out. > > Currently I am looking at using this equation to calculate the steady state > temperature. I debugged the HoSpot source code and found out that > steady_state_temp(model, overall_power, steady_temp) is used to calculate > the steady state temperature. I found the follow function call flows: > steady_state_temp -> steady_state_temp_grid -> recursive_multigrid -> > set_heuristic_temp -> scaleadd_dvector > > which it use model->layers.rz as the delta resistance. this is a single > value that is used through out the grid cells in the single layer, i was > wondering if i change this rz to equal to the total resistance value mention > above, will it work? Plus, why the HotSpot uses rz in this calculation? Will > it be necessary to create a matrix for each layer to calculate the grid > cell's resistance individual? > Correct me if I didn't understand your idea. Basically you want to get rid of the layered RC network and replace it with an equivalent single layer? I doubt this would work well in terms of accuracy, but if you want some first-order exploration or quick and dirty results, this might be worth tring. As for "rz" in the grid model, I don't quite understand your question... Because we assume regular grid cells, so as long as the material within each layer is homogeneous, it is convenient to use one rz value for that layer. Solving matrix for large grid size is very expensive (imagine 1000x1000 with 10 layers), so instead we use an iterative method to solve the network. I am sure there are much better algorithms out there for this problem. -Wei > > Thank you > BoChen Wu > > On Tue, Apr 6, 2010 at 2:47 PM, Bo Chen Wu wrote: > >> Hi Wei Huang, >> >> Thank you very much for your response, I appreciated, Please see my >> comments below and please let me know if you have any questions: >> >> Penn State University >> M.S. of Computer Science and Engineering >> BoChen Wu >> bochen.wu at gmail.com >> >> On Tue, Apr 6, 2010 at 10:54 AM, Wei Huang wrote: >> >>> HI Please see below... >>> >>> On Mon, Apr 5, 2010 at 7:17 PM, Bo Chen Wu wrote: >>> >>>> Hey guys, >>>> >>>> I have several questions would like to ask you guys: >>>> >>>> 1) I just finished running the Hotspot tutorial? I would like to debug >>>> to see what is the hotspot actually doing while running it? Can I use visual >>>> studio 2008 to debug it? Or do you have a better program to suggest for me >>>> to debug the source code? >>>> >>> >>> Our online HOW-TO provides step-by-step instructions on how to compile >>> HotSpot in Windows and how to use HotSpot in VC++. >>> >> [BCW 04/06/2010]: I only saw the HOW-TO provides step-by-step >> instruction of how to build the HotSpot, but it did not said how to using >> VC++ to step into code to debug and see what each line of code doing. I >> guess I should create a project initially in the visual studio 2008 and >> debug the HotSpot? Or do you guess another way of stepping through the >> source code? >> >>> >>>> 2) I notice that hotspot support partial 3-D stacking thermal which only >>>> apply for grid model, What is the model which thermal model is the current >>>> 3-D stacking thermal model that Hotspot is using, or What kind equation is >>>> the Hotspot use to compute the each grid cell's temperature at run time? >>>> >>> >>> I am not sure I understand your question. The grid model is a >>> finite-difference model, which updates temperature of one grid cell based >>> its neighbors and iterate. >>> >> [BCW 04/06/2010]: I think you answered partial of my question. based on >> what you said above, the finite-different model is basically updated each >> cell's temperature based on its neighbors' temperature? My question was what >> kind equation or logic was used in this finite-difference model? For >> example, does the cell subtract its temperature from the average temperature >> of all its neighbor cells? >> >>> >>>> 3) I am currently trying to integrate a 3-D liquid cooling thermal model >>>> to the Hotspot, I think the best place of the source for me to change is in >>>> the RCutil.c function AK4? is this correct? >>>> >>> >>> This seems a non-trivial hack to HotSpot. I don't have a ready answer for >>> you now. But it should be more complicated than just modify the algorithm. >>> If you are talking about microchannel cooling, you need to add layers that >>> model the microchannels, and also have a good way to model the >>> silicon-to-channel convection, and the thermal model for the liquid flow. >>> There are some recent papers on how to model 3D u-channel cooling in the >>> literature, for example, you can search recent ICCAD papers. >>> >> [BCW 04/06/2010]: You are right, i plan to use the microchannel cooling >> that recently scholars have studied. Also, from the reading the research >> papers, i have obtained the model of calculating the total thermal >> resistance at each cell level for 3-D stacking using microchannel cooling. >> Since HotSpot supports calculating the grid-cell level temperatures, I would >> like the integrated the model i found into HotSpot. i think to model the >> microchannel, I can just use an extra layer with microchannel floor plan. I >> am doing this for my class project. >> >>> >>> Hope this helps. >>> >>> -Wei >>> >>>> >>>> -- >>>> Thank You For Your Time. >>>> Bo Chen Wu >>>> (646)-861-9905 >>>> _______________________________________________ >>>> HotSpot mailing list >>>> HotSpot at mail.cs.virginia.edu >>>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>>> >>>> >>> >> >> >> -- >> Thank You For Your Time. >> Bo Chen Wu >> (646)-861-9905 >> > > > > -- > Thank You For Your Time. > > Bo Chen Wu > The Pennsylvania State University - University Park > > M.S. of Computer Science and Engineering > (646)-861-9905 > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100430/dcaf4f89/attachment-0001.html From wh6p at virginia.edu Fri Apr 30 09:14:13 2010 From: wh6p at virginia.edu (Wei Huang) Date: Fri, 30 Apr 2010 11:14:13 -0500 Subject: [Hotspot] Question about hotfloorplan In-Reply-To: References: Message-ID: Hi Juan, sorry for the late response. I personally am not very familiar with HotFloorplanner, but I am sure my colleagues are able to help you with this once they see this post. My guess is that the "connectivity" means the two units are logically adjacent in the microarchitecture. But they are not necessarily physically adjacent in the floorplan. The floorplanner will try its best by not put the two blocks too far apart, which might cause timing violations due to interconnect delays and such. There may be some assumptions/configs regarding the relationship between delay and distance for each type of units in the tool. Basically, the floorplanner's job is to find an optimal floorplan that minimizes the hot spot temperature without violating timing constraint (or it also optimizes the timing at the same time for a given hot spot temperature constraint). I might not be entirely accurate about the tool, but you get the basic idea. Hope this helps. -Wei 2010/4/29 Juan Manuel Cebri?n Gonz?lez > Hello. > > I've been working on some description files for a set of processors, > scaling technologies etc for 2 cores, 4 cores... When i tried to build the > floorplans using this tool i get some weird results. While the area is been > optimized, the connectivity specified in the .desc file seems to be > completely ignored. I get an isolated ICache in the middle of the chip and > other similar results. Then i looked at the ev6.flp.orig you provided and it > also completely ignores the connectivity info from the .desc file (i.e. DTB > LdStQ 1) both structures should be adjacent, but they are not. > > Here are the connectivity and the generated floorplan. > > # Connectivity information > # Line format \t\t > > # Core 0 > IntExec_c0_ ROB_c0_ 1 > Bpred_c0_ TLB_c0_ 1 > Bpred_c0_ Icache_c0_ 1 > Dcache_c0_ LdStQ_c0_ 1 > ROB_c0_ IntReg_c0_ 1 > TLB_c0_ LdStQ_c0_ 1 > AluMap_c0_ LdStQ_c0_ 1 > FPAlu_c0_ ROB_c0_ 1 > Dcache_c0_ L2_c0_ 1 > Icache_c0_ L2_c0_ 1 > AluMap_c0_ ROB_c0_ 1 > ROB_c0_ FPReg_c0_ 1 > > # Core 1 > IntExec_c1_ ROB_c1_ 1 > Bpred_c1_ TLB_c1_ 1 > Bpred_c1_ Icache_c1_ 1 > Dcache_c1_ LdStQ_c1_ 1 > ROB_c1_ IntReg_c1_ 1 > TLB_c1_ LdStQ_c1_ 1 > AluMap_c1_ LdStQ_c1_ 1 > FPAlu_c1_ ROB_c1_ 1 > Dcache_c1_ L2_c1_ 1 > Icache_c1_ L2_c1_ 1 > AluMap_c1_ ROB_c1_ 1 > ROB_c1_ FPReg_c1_ 1 > > #L2 is shared > L2_c0_ L2_c1_ 1 > > And the output (picture) > > http://skywalker.inf.um.es/~jcebrian/mi_procesador_2p_8kbpred.pdf > > Is there something wrong with the tool or i am misunderstanding the > "connectivity" meaning from the .desc file? (i understand that if two > structures are "connected" they should be adjacent, or at least as close as > possible (this does not happen in my 2-Core output). > > Thank you in advance. > > Best, Juan Manuel. > > -- > --------------------------------------------- > Juan Manuel Cebri?n Gonz?lez > University of Murcia, Spain > http://skywalker.inf.um.es/~jcebrian/ > --------------------------------------------- > > > _______________________________________________ > HotSpot mailing list > HotSpot at mail.cs.virginia.edu > http://www.cs.virginia.edu/mailman/listinfo/hotspot > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100430/7bbd0303/attachment.html From bochen.wu at gmail.com Fri Apr 30 09:27:33 2010 From: bochen.wu at gmail.com (Bo Chen Wu) Date: Fri, 30 Apr 2010 12:27:33 -0400 Subject: [Hotspot] Debug the source code In-Reply-To: References: Message-ID: Hi Wei, Thank you very much, I found the oil-based case configuration file. I wasn't mean of get rid of the RC network. Currently i am concentrate on the steady state temperature calculation, and once the steady state temperature is completed, I will move to the transient state temperature. Based on what i learned from the classes, steady state's temperature can be calculated using *T* = *R* x *P*, where *R* is the resistance matrix and *P* is the power consumption matrix. i saw that HotSpot calculated the total power consumption of each grid cell, so if we find the total resistance of each grid cell, then can we just calculate the temperature from T = R x P? /* nth layer temp is n+1th temp + cumul_power * rz of the nth layer */ scaleadd_dvector(temp->cuboid[n][0], temp->cuboid[n+1][0], sum[0], nr*nc, model->layers[n].rz); above code is from set_heuristic_temp function. instead of using model->layers[n].rz, a single resistance values for all grid cell in the same layer, can we replace this single value with total resistance value of each single grid cell in the particular layer? Because for some part of the layer, some surfaces are in contact with the liquid(water) cooling, which these areas in that layer should have different resistance value. Therefore, if the microchannel cooling is integrated into the Hotspot, we should create total resistance matrix for each grid cell for each layer, or maybe just the layers that are in contact with the microchannel coolings. Please point out if i have misunderstand the logic in the HotSpot or the materials i learned in my class. Again, Thank you very much for your help. BoChen Wu On Fri, Apr 30, 2010 at 9:21 AM, Wei Huang wrote: > Hi Bo, please see below... > > >> I read two of the research papers you have upload on the HoSpot website. >> In the papers, you mentioned about use Oil-Silicon and Air-Sink for >> simulation. I would like to perform the same simulations, do you have any >> documented simulation steps for these two scenarios? >> > > I believe there is a configuration file for the oil-based cooling case, in > HotSpot v5.0. > >> >> Also, another one of your paper mention about using flp-basic and >> flp-advance options when perform floor plan optimization using >> HotSpotFloorPlan, do you have any documented simulation steps that i can >> borrow? >> > > I am not very familiar with details of HotFloorplanner, it is developed my > another colleague. Once he sees this post, he should be able to help you > with this question. > >> >> As i mentioned before, I was trying to integrate the micrchannel into 3D >> thermal simulation. based on the work that is done by David Atienza, he >> indicated that at each grid cell's total resistance can be calculated using >> following equation: >> Rtot = Rcond + Rconv + Rheat = 1 / (Gsi/t + 1/Rb) + A / (h*At) + A / >> (V*P*cp) where each of the variable are constant. >> > > I am not aware of this work, sounds interesting. Will check it out. > >> >> Currently I am looking at using this equation to calculate the steady >> state temperature. I debugged the HoSpot source code and found out that >> steady_state_temp(model, overall_power, steady_temp) is used to calculate >> the steady state temperature. I found the follow function call flows: >> steady_state_temp -> steady_state_temp_grid -> recursive_multigrid -> >> set_heuristic_temp -> scaleadd_dvector >> >> which it use model->layers.rz as the delta resistance. this is a single >> value that is used through out the grid cells in the single layer, i was >> wondering if i change this rz to equal to the total resistance value mention >> above, will it work? Plus, why the HotSpot uses rz in this calculation? Will >> it be necessary to create a matrix for each layer to calculate the grid >> cell's resistance individual? >> > > Correct me if I didn't understand your idea. Basically you want to get rid > of the layered RC network and replace it with an equivalent single layer? I > doubt this would work well in terms of accuracy, but if you want some > first-order exploration or quick and dirty results, this might be worth > tring. As for "rz" in the grid model, I don't quite understand your > question... Because we assume regular grid cells, so as long as the material > within each layer is homogeneous, it is convenient to use one rz value for > that layer. Solving matrix for large grid size is very expensive (imagine > 1000x1000 with 10 layers), so instead we use an iterative method to solve > the network. I am sure there are much better algorithms out there for this > problem. > > -Wei > >> >> Thank you >> BoChen Wu >> >> On Tue, Apr 6, 2010 at 2:47 PM, Bo Chen Wu wrote: >> >>> Hi Wei Huang, >>> >>> Thank you very much for your response, I appreciated, Please see my >>> comments below and please let me know if you have any questions: >>> >>> Penn State University >>> M.S. of Computer Science and Engineering >>> BoChen Wu >>> bochen.wu at gmail.com >>> >>> On Tue, Apr 6, 2010 at 10:54 AM, Wei Huang wrote: >>> >>>> HI Please see below... >>>> >>>> On Mon, Apr 5, 2010 at 7:17 PM, Bo Chen Wu wrote: >>>> >>>>> Hey guys, >>>>> >>>>> I have several questions would like to ask you guys: >>>>> >>>>> 1) I just finished running the Hotspot tutorial? I would like to debug >>>>> to see what is the hotspot actually doing while running it? Can I use visual >>>>> studio 2008 to debug it? Or do you have a better program to suggest for me >>>>> to debug the source code? >>>>> >>>> >>>> Our online HOW-TO provides step-by-step instructions on how to compile >>>> HotSpot in Windows and how to use HotSpot in VC++. >>>> >>> [BCW 04/06/2010]: I only saw the HOW-TO provides step-by-step >>> instruction of how to build the HotSpot, but it did not said how to >>> using VC++ to step into code to debug and see what each line of code doing. >>> I guess I should create a project initially in the visual studio 2008 and >>> debug the HotSpot? Or do you guess another way of stepping through the >>> source code? >>> >>>> >>>>> 2) I notice that hotspot support partial 3-D stacking thermal which >>>>> only apply for grid model, What is the model which thermal model is the >>>>> current 3-D stacking thermal model that Hotspot is using, or What kind >>>>> equation is the Hotspot use to compute the each grid cell's temperature at >>>>> run time? >>>>> >>>> >>>> I am not sure I understand your question. The grid model is a >>>> finite-difference model, which updates temperature of one grid cell based >>>> its neighbors and iterate. >>>> >>> [BCW 04/06/2010]: I think you answered partial of my question. based on >>> what you said above, the finite-different model is basically updated each >>> cell's temperature based on its neighbors' temperature? My question was what >>> kind equation or logic was used in this finite-difference model? For >>> example, does the cell subtract its temperature from the average temperature >>> of all its neighbor cells? >>> >>>> >>>>> 3) I am currently trying to integrate a 3-D liquid cooling thermal >>>>> model to the Hotspot, I think the best place of the source for me to change >>>>> is in the RCutil.c function AK4? is this correct? >>>>> >>>> >>>> This seems a non-trivial hack to HotSpot. I don't have a ready answer >>>> for you now. But it should be more complicated than just modify the >>>> algorithm. If you are talking about microchannel cooling, you need to add >>>> layers that model the microchannels, and also have a good way to model the >>>> silicon-to-channel convection, and the thermal model for the liquid flow. >>>> There are some recent papers on how to model 3D u-channel cooling in the >>>> literature, for example, you can search recent ICCAD papers. >>>> >>> [BCW 04/06/2010]: You are right, i plan to use the microchannel cooling >>> that recently scholars have studied. Also, from the reading the research >>> papers, i have obtained the model of calculating the total thermal >>> resistance at each cell level for 3-D stacking using microchannel cooling. >>> Since HotSpot supports calculating the grid-cell level temperatures, I would >>> like the integrated the model i found into HotSpot. i think to model the >>> microchannel, I can just use an extra layer with microchannel floor plan. I >>> am doing this for my class project. >>> >>>> >>>> Hope this helps. >>>> >>>> -Wei >>>> >>>>> >>>>> -- >>>>> Thank You For Your Time. >>>>> Bo Chen Wu >>>>> (646)-861-9905 >>>>> _______________________________________________ >>>>> HotSpot mailing list >>>>> HotSpot at mail.cs.virginia.edu >>>>> http://www.cs.virginia.edu/mailman/listinfo/hotspot >>>>> >>>>> >>>> >>> >>> >>> -- >>> Thank You For Your Time. >>> Bo Chen Wu >>> (646)-861-9905 >>> >> >> >> >> -- >> Thank You For Your Time. >> >> Bo Chen Wu >> The Pennsylvania State University - University Park >> >> M.S. of Computer Science and Engineering >> (646)-861-9905 >> > > -- Thank You For Your Time. Bo Chen Wu The Pennsylvania State University - University Park M.S. of Computer Science and Engineering (646)-861-9905 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100430/87478555/attachment-0001.html From sridhar.sundaram at amd.com Fri Apr 30 09:31:29 2010 From: sridhar.sundaram at amd.com (Sundaram, Sridhar) Date: Fri, 30 Apr 2010 11:31:29 -0500 Subject: [Hotspot] Remove from mailing list Message-ID: <3399D2269986104B959D31B7E919313C068CB502@SAUSEXMBP01.amd.com> Can you please remove me from the mailing list? Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cs.virginia.edu/pipermail/hotspot/attachments/20100430/889bbdd8/attachment.html