価格のほぼ同じトークン同士のプールDEXであるCurveですが、プールの仕様によってガスコストが異なります。
USD系プールのうち、sUSDプール以外は全て金利のつくトークンを利用しています。このため、金利のつくトークンを利用するプールへ流動性提供するときにはトークンの変換プロセスが入るためガスコストが高くなります。
sUSDプール(素のトークンを利用)のtxの例:
https://etherscan.io/tx/0x781d1467f8bb8eedfe77c194b4595debae1b76a8b916555cbc2798ccaf374338
所要ガスは300k。
yプール(金利のつくトークンを利用)のtxの例:
https://etherscan.io/tx/0xc79a013c7f462b0ec4c140c919907be255ea08f2329769130586ab0a93162c74
所要ガスは750k。素のトークンをyTokenへ変換するプロセスが入っています。
CompoundプールはCOMPトークンの請求プロセスが入るので割高です。
https://etherscan.io/tx/0xc7a7de6be025fdc8781961d447b238329c9e2394bd3525302667a4090076bbcb
所要ガスは960k。
おまけ
スワップ取引で金利つきトークンプールを利用するときには、流動性提供の逆で、トークンの分解作業が入るので、これも素のプールを利用するよりもガス高になります。
単一アセットで流動性提供性する際の挙動がUSD系プールとBTC系プールで異なります。USD系プールでは単一アセット提供しているにも関わらず、他のアセットの0量トランスファーが処理として入ってしまいます。対して、BTC系プールでは目的のアセットのトランスファーのみが処理されます*。
*BTC系コントラクトのほうが新しいので、改善があったのかもしれません。今後新規に実装されるUSD系プールでは同様の改善があるかも?
sUSDプールのtxの例:
https://etherscan.io/tx/0x781d1467f8bb8eedfe77c194b4595debae1b76a8b916555cbc2798ccaf374338
所要ガスは300k。DAIを提供していますが、USDC、USDT、sUSDの0量トランスファーが入っています。
renBTCプールのtxの例:
https://etherscan.io/tx/0xfbbfb29d299f032860b54017150f69da98af0a9245eb0d0199841cb6b80b7171
所要ガスは140k。WBTCを提供して、WBTCのトランスファーだけが処理されています。
以上をふまえて、ガスの安い順にプールを並べると次のようになります:
1. BTC系プール
2. sUSDプール
3. PAX、Y、BUSDプール
4. Compoundプール
著者 kyoronut https://twitter.com/kyoronut