As I know the symmetric encryption algorithms are faster than asymmetric encryption algorithms. But when I test GCM AES-128 and Curve25519 encryption time, I find Curve25519 is faster than GCM AES-128.  
Is that normal?  
Is GCM AES-128 slow?


By the way, I use these python libraries for the comparison:

 - [PyNaCl for Curve25519][1] (using the `box`)
 - [Cryptography.io for AES-GCM][2]

I performed the tests with Ubuntu 16.04 64-bit on an Intel Core [i7-2640M][3] and ran the tests multiple times with differing input lengths.


  [1]: https://pynacl.readthedocs.io/en/stable/public/?highlight=curve25519
  [2]: https://cryptography.io/en/latest/hazmat/primitives/symmetric-encryption/#cryptography.hazmat.primitives.ciphers.modes.GCM
  [3]: https://ark.intel.com/products/53464/Intel-Core-i7-2640M-Processor-4M-Cache-up-to-3_50-GHz

    The speeds for curve25519 are (1 kB):
    Encryption 6.29425048828e-05 sec
    Decryption 2.31266021729e-05 sec

    The speeds for GCM are (1 kB):
    Encryption 0.000115156173706 sec
    Decryption 0.000576972961426 sec