私は、Google プロトコル バッファと Apache thrift シリアライゼーション パッケージのベンチマークを担当する学生 (noob) です。
私の問題は、Apache Thrift では文字列にシリアル化するために 3 つの呼び出しが行われることです...しかし、Google プロトコル バッファでは 1 つの呼び出しのみが行われます。
3 つの apache thrift 呼び出しは、シリアル化する前にメモリをセットアップするためのものです。
Apache thrift が Google 呼び出しと同等になるように、これらのメモリ セットアップ関数をベンチマークに含める必要がありますか?
このようなベンチマークを行うためのガイド投稿やベスト プラクティスはありますか?
#apache thrift
person1 = Person()
person1.name = "person1"
person1.id = 1
person1.email = "test@test.com"
#three calls
transportOut = TTransport.TMemoryBuffer()
protocolOut = TBinaryProtocol.TBinaryProtocol(transportOut)
person1.write(protocolOut)
#google protocol
person1 = Person()
person1.name="person1"
person1.id=1
person1.email="test@test.com"
#one call
person1.SerializeToString()
前もって感謝します!