The better way to use evalhf() is

tp3 := proc ()
local i, j, k, m, total, Temp3, Temp1, Temp2, Temp;
total := 0;
for i from 1 to 100 do
Temp1 := i*i;
for j from 1 to 100 do
Temp2 := Temp1+j*j;
for k from 1 to 100 do
Temp3 := sqrt(Temp2+k*k);
if Temp3 < 100.0 then
total := total+1
end if
end do
end do
end do;
total/0.1e6
end proc;
testproc3 := proc() evalhf(tp3()) end;

This should be closer to competitive with VB.
On the other hand, Maple's interpreter is not particularly fast. That's because it has to implement so many funky features, and unfortunately the cost of those funky features are borne by the whole system, rather than being localized to those features. Contrast this to Chez Scheme, where the advanced features can be a little slower than Maple, but the core system is a lot faster - different systems, different compromises.