With Streams and the upcoming P4Sandbox, Perforce has almost completely caught up with git. The only feature of git that I used regularly that Perforce can't do is committing only part of a changed file, like git's ability to stage hunks into a commit.
For instance, I've made 2 changes in a file. Added a function at line 20, and refactored something at line 100. I'd love to be able to split that change into 2 separate submits.