I am wondering if there are chess games or tournaments between engines, with very small duration, like 10-5 seconds or 10-10 seconds (every game). If not, this would not be interesting? What do you think?
At those timescales, communication between computers becomes a problem. For instance, it takes more than a millisecond (10-3 s) for me to ping my router. Even if you install a sort of timekeeper program on the computer itself, CPU clocks aren't reliable on such small timescales.
Instead, it might be more interesting to run them on slower hardware.
for ultra low timescales the computers would at best have time for a 1 ply search. So you'd be figuring out the best "shallow search" evaluation function. Possibly bullet players would be interested in the parameters of such a search function because I suspect they differ from search functions designed to preform well for deep searches.
You overestimate how fast computers are. At 10-10 seconds, you are close to the single machine instruction timescale. That is, "how much is 2+2?", not "evaluate a chess position", let alone play an entire game. At 10-5 you could do a pretty shallow evaluation. It would be an interesting programming exercise but in terms of chessplay quality I'm not sure it would mean much. My guess is that for a game between engines to be somewhat meaningful it would need to take several orders of magnitude longer than that.
Throwing more CPUs or GPUs at the problem, you can greatly increase computing capacity, but I don't think that would help you play such fast games due to communication overhead and other factors. One thing you can do, however, is play many games in parallel. You could have a match on a supercomputer where two engines play thousands of games at the same time, and see which engine wins more. The entire match could be over in seconds of "wall clock time".