That is a result of the --temp-cutoff being default at 95 degrees. You may be able to use dynamic intensity and tuning based on temp with GPU settings (press the G key after cgminer/sgminer starts up).
I'm using 'auto-gpu' which helps reduce the clock speed, and seems to reduce the temperature, but sometimes that's still not enough. I took a look in the GPU settings in SGminer, but I didn't see an option to turn on "auto-intensity." There this a flag I could add to my config file?
{
"pools" : [
{
"url" : "stratum+tcp://us-east.multipool.us:11111",
"user" : "xxx",
"pass" : "xxx"
},
]
,
"intensity" : "13,13,13",
"xintensity" : "0,0,0",
"rawintensity" : "0,0,0",
"worksize" : "0,0,0",
"kernel" : "darkcoin,darkcoin,darkcoin",
"lookup-gap" : "0,0,0",
"thread-concurrency" : "0,0,0",
"shaders" : "0,0,0",
"gpu-threads" : "1,1,1",
"gpu-engine" : "0-1100,0-1100,0-1100",
"gpu-fan" : "0-85,0-85,0-85",
"gpu-memclock" : "0,0,0",
"gpu-memdiff" : "0,0,0",
"gpu-powertune" : "0,0,0",
"gpu-vddc" : "0.000,0.000,0.000",
"temp-cutoff" : "95,95,95",
"temp-overheat" : "85,85,85",
"temp-target" : "75,75,75",
"auto-gpu" : true,
"api-mcast-port" : "4028",
"api-port" : "4028",
"expiry" : "28",
"failover-switch-delay" : "60",
"gpu-dyninterval" : "7",
"gpu-platform" : "0",
"log" : "5",
"no-pool-disable" : true,
"queue" : "1",
"scan-time" : "7",
"tcp-keepalive" : "30",
"temp-hysteresis" : "3",
"shares" : "0",
"kernel-path" : "/usr/local/bin"
}