If you are not looking forward to going to the dogs with the hangar of devices, here are some hints to experience in practice.
The first one is obvious: use analytics systems to identify which devices are worth spending time for your audience. We were surprised to rebuild our device stack when we stopped using market statistics and focused on our audience. It's really different from the product to a product even for the apps with 10M+ DAU, despite the law of large numbers. As a result, for each of our clients, we build a specifically fitted pool of devices so there has not been a sniff of generalist approaches.
The second one is OS mixing. Let's figure out how it works. If you have a suite of regression test cases, split it into the number of parts equal to the number of Operating Systems combinations you need to cover. Particularly, you need to run a single suite in 4 threads and after you finish re-iterate with mixing (opposite to running 4 suites in a single thread). And here is the first magic result: testing time is the same, but the bugs get identified earlier.
The third hint is to shuffle devices inside the OS group. During each iteration, for the same OS we use different device models from the pool. Check the table below to get the combination.