Nu vet jag ju inte vilken algoritm du använder för att hitta roten ( eller om det är en "perfekt rot" ). Men om du använder Newton-Raphsons (NR) metod så bör du kunna hitta ett hyffsat startvärde bara genom att ta "halva tiopotensen" av talet. Jag tror inte att NR divergerar för någon startpunkt när funktionen är sqrt(x). Det bör inte krävas många iterationer då för att hitta roten (även om det inte är det du är ute efter).
Blir nästan sugen på att undersöka möjligheterna själv!

Testa programutvecklings-forumet, dom kanske har stött på samma problem som du!
EDIT: har du funderat något på primtalsfaktorisering? Kanske går att hitta en snabb algoritm den vägen? Jag skulle tro att det är långsammare än NR men det kan finnas en chans ...
EDIT2: Hur många klockcykler ( eller tid ) tar det för dig att bestämma om en rot är ett heltal eller ej?
Matlab klarar att räkna ut sqrt(1e14) på 0.016660 s.
sqrt(0.14e14) tar 0.000075 s.
Tror att det blir ganska svårt att slå dom tiderna ...