This is what a typical extruded fin heatsink looks like. It’s made of metal and sits on top of IC packages that themselves are soldered to a PCB. It cools those packages by providing an increased air apparent surface area with which to pass on the heat that has been conducted up through it. It’s shape (topology) is in most ways set by the manufacturing process used to create it. In this case squeezing molten aluminum through a die with that shape as the profile. Similar constraints exist for other manufacturing processes, be it milling, casting, brazing etc. 3D printing removes many of these constraints and, as the technology matures, I believe all of them will be addressed. So, with a process that can print any 3D shape, how should design tools adapt to such an opportunity?