BP earnings triple as energy firm profits from rising prices