The Google Pixel 3 Review: The Ultimate Camera Testby Andrei Frumusanu on November 2, 2018 11:00 AM EST
- Posted in
- Snapdragon 845
- Pixel 3
Pixel phones have been known to be among the best performing Android devices in the market. This is mainly due to the Pixel’s performance team taking the time and attention to tweak the software stack – kernel and userspace alike. This is one of the benefits of being one of the last flagships out of the gate for a given generation, as it gives time to optimize the performance. The Pixel 3 comes with the Snapdragon 845, and I’ve written many times this year how Qualcomm’s software, and in particular the kernel scheduler was a very significant factor as to why this year’s Snapdragon phones performed so marvellously.
One of the big questions I posed myself early in the year is exactly how Google planned to handle Qualcomm’s great divergence from upstream, and the divergence from the Google common kernel. As a reminder, the Google common kernel is now the “official” branch on which SoC vendors should be basing their BSP (board support packages, essentially the software stack) for their own products. This is a collaborative effort between vendors (Mainly Google, Qualcomm and Arm), and it’s also the target where Arm pushes its own EAS patches.
The matter of fact is, for the Pixel 3, Google is simply using Qualcomm’s custom scheduler. This is both a great win for Qualcomm given the expected device performance of the Pixel 3, and quite a blow to Arm’s own efforts, as the EAS improvements over the last year are just simply not being used. Qualcomm’s efforts as well as the resulting product are just too good to pass on, and I’m very much expecting next year to finally be a watershed moment where other vendors finally abandon attempts to keep things minimalistic, and in line with upstream Linux, and finally see the immense value in investing in actual immediate benefits for consumer devices of a given generation.
Starting with PCMark’s Web Browsing 2.0 test, the Pixel 3 leads the pack, with a slight advantage over other Snapdragon 845 phones. The reason here is that Google seemingly uses the most up-to-date scheduler, as well as has some possible file I/O advantages which I’ll get into a bit later. There are also possible OS side improvements in the libraries, as the Pixel 3’s ship with Android 9.
I’ve updated the performance results for past Pixels with the newest OS updates, as well as for devices like the OnePlus 6 as these have received their OS updates as well.
In the writing test, which is probably PCMark’s most important as well as representative benchmark, the Pixel 3 saw a big leap in performance over the previous Pixels – however I think this was due to Android 9 itself, as we also saw a big jump in the OnePlus 6’s performance with the latest OS update.
The photo editing test is very much a scheduler responsivity test as modern devices are able to complete the workloads relatively fast at their peak performance states. Here the score wildly fluctuates depending on how fast the DVFS mechanism is, and we see the Pixel 3 among the best performers.
The data manipulation score is extremely high on the Pixel 3 compares to other phones, including the OnePlus 6. I wasn’t able to verify this empirically, but glancing over the scheduler the Pixel has some unique updates to it which facilitate better responsiveness and scheduling of single big tasks, and the data manipulation test is such a workload with a big single-threaded component.
Overall, the Pixel 3 takes the top position in PCMark, all thanks to its scheduler improvements as well as a slight advantage due to it running Android 9.
Moving onto web browser tests, the Pixel 3 largely matches the other Snapdragon 845 devices. This is no surprise as Speedometer 2.0 is a high constant throughput ST benchmark, and as such isn’t as affected by scheduler as PCMark.
Apple still has a considerable performance lead here. After our recent iPhone XS review and SoC deep-dive, I’m more leaning towards the explanation that a big part of the advantage here is purely due to hardware and the microarchitectural advantages of Apple’s CPUs, with part of it also being Apple’s Nitro JS engine.
WebXPRT also looks in line with other Snapdragon 845 devices.
Pixel 3 – Now using F2FS
Section with credit and input by Park Ju Hyung (@arter97)
The Pixel 3 now has switched over from an EXT4 filesystem, to the F2FS filesystem. Google explains this switch due to the fact that F2FS now supports inline block encryption which has been the last major roadblock as to why Google hadn’t made the switch earlier.
Inline block encryption uses the SoC’s inline cryptographic engines, which just serve as an intermediate hardware layer to the NAND and offload any encryption workloads that were initially in past devices performed by the CPU.
The switch to F2FS now gives the Pixel 3 a number of advantages over previous filesystem; Previously, SQLite (which is used by almost all database files under Android) used another 'journaling' on its own to prevent corruption. This caused “double journaling” on top of EXT4, which in itself is a journaling filesystem. Since F2FS doesn’t need this kind of protection and the Pixel 3 includes Google’s SQLite changes in Android 8.1, the Pixel 3 is able to take advantage of this, as well as any other F2FS based device from other vendors which have the corresponding OS patches.
The result is that this will enable much higher write/commit speeds for SQLite, not to mention less wear and tear to the underlying UFS storage. Also, the Pixel 3 turned off barriers for fsync() system calls, which will improve general random I/O write speeds by a significant margin.
Another big improvement for file I/O is the implementation of “Host Performance Booster” in the kernel and UFS controller firmware stack. HPB is essentially caching of the NAND chip’s FTL (flash translation layer) L2P (logical to physical) mapping tables into the hosts (SoCs) main memory. This allows the host driver to look up the target L2P entry directly without betting on UFS’s limited SRAM to have a cache-hit, reducing latency and greatly increasing random read performance. The authors of the feature showcase an improvement of 59-67% in random I/O read performance due to the new feature. It’s worth to mention that traditional Android I/O benchmarks won’t be able to show this as as those tend to test read speeds with the files they’ve just created.
Overall, the Pixel 3 is the fastest Android device on the market right now. The one thing that puts it above other devices such as the OnePlus 6 is a noticeable faster response-time when opening applications – either a framework related boost or just an effect of the faster file I/O.
Post Your CommentPlease log in or sign up to comment.
View All Comments
saleri6251 - Friday, November 2, 2018 - linkHello Andrei,
Thanks for the review as always. Just curious do you have any thoughts on the Titan M Security Chip?
Andrei Frumusanu - Friday, November 2, 2018 - linkI didn't have much time to get into it, we covered Google Hot Chips presentation: https://www.anandtech.com/show/13248/hot-chips-201...
cha0z_ - Monday, November 5, 2018 - linkHey, as we speak about chips - can you include/test the note 9 exynos? It's bigger body compared to the s9 and also has a lot better coolling. We all read your articles about the exynos 9810 + a lot about in @ xda, but it will be really nice to see where the more popular note 9 exynos stands with it's bigger coolling and body compared to the competition and s9/s9+.
If you have the time and the desire, otherwise it's also cool - you do a lot of great reviews about phones/mobile SOCs. Keep it up and cheers!
cha0z_ - Monday, November 5, 2018 - linkNo edit here: I am aiming primary at the sustained performance of the system/GPU tests. I am sure you already guessed it, but for the other members of the community.
jordanclock - Friday, November 2, 2018 - linkAs a P3XL owner, I can say this review completely matches my experiences.
Also, that camera comparison is insane and Andrei is a mad-man for taking that many pictures AND THEN REVIEWING THEM ALL.
Andrei Frumusanu - Friday, November 2, 2018 - linkThanks! The camera was a lot of work.
This should also serve as a good comparison between all important phones over the last year or two. It's something I hope I won't have to do again till the S10.
jordanclock - Friday, November 2, 2018 - linkThat last night shot is pretty similar to a comparison I showed my friends when they thought that it was just a gimmick.
Have you also found that using the night shot for every shot seems to be a good default? I found that in general the night shot results are "good enough" compared to HDR+, but obviously has the benefit of better low-light results.
Andrei Frumusanu - Friday, November 2, 2018 - linkI've posted night mode pictures in daylight scenes as well, just to answer this question.
There's no obvious difference and you can stay in night mode all the time, the only negative is that it'll be slower in terms of capture.
melgross - Sunday, November 4, 2018 - linkI’ve read that night mode is done after capture, not during, as Google, and other manufactures do their auto modes. So likely that’s why it’s slower.
s.yu - Sunday, November 11, 2018 - linkThank you for again the best set of samples on the net!
This night mode just doesn't cease to amaze me, it preserves DR and enough(I'd say over 80%) resolution while accurately suppressing noise that it surpasses auto often enough even in daytime!
This is two notches above Huawei's night mode implementation, while Pixel's auto was better in the first place.