Modern CPUs could push a lot of PPS, but they can't with current network stacks. Linux or FreeBSD on a modern 3.5ghz octal core Xeon can't push enough 64 byte packets to saturate a 100Mb link. PFSense 3.0 was looking to use
dpdk to do line rate 40Gb, but they are also looking at alternatives like netmap. PFSense 3.0 is also aiming to do line rate 10Gb+ and eventually 40Gb VPN/IPSec, which dpdk would make viable. There's also talk about potentially scaling line rate all the way into the 80Gb range. That's full stateful firewalling and NAT.
I just hope someone can fix the network stacks so they can actually handle a 10Mb/s DDOS attacks. There is no reason 10Mb of traffic should take down a modern firewall. Turns out to be around 1 million clock cycles per packet. What the heck is the network stack doing to spend 1mil cycles trying to handle a packet? /rant