3 is the obvious answer...
Assume balls numbered 1 to 8 and, say, 6 is the heaviest.
weigh 1, 2, 3 and 4 against 5, 6, 7, 8. Discard 1-4
Weigh 5 and 6 against 7 and 8. Discard 7 and 8.
Weigh 5 against 6 and discover 6 is the heaviest.
But as 3 is the obvious answer I assume there is a cunning answer of 2.
I'm ashamed to say I Googled it. 2 is the answer. Cunning indeed is the method.