Is it necessary for all miner to reset mining when the tip of blockchain has changed?
Correct: when block B is broadcast and validated, all miners need to construct new blocks containing a hash of block B's header.

However, it takes only a minuscule amount of computer processing time to construct a new block, so there is effectively no such thing as "restarting work".  Mining is specifically designed to be progress-free: you have the same chance of finding a valid block after a millisecond of work as you do after an hour of work.

Progress-free mining means that a miner with x hash rate should produce n blocks over time, and a miner with 2x hash rate should produce 2n blocks over time---there should be no special advantage to the more powerful miner.