Uploaded image for project: 'Apache IoTDB'
  1. Apache IoTDB
  2. IOTDB-1298

Insertion performance loss due to meaningless autoboxing and unboxing

    XMLWordPrintableJSON

Details

    Description

      Using IoTDB benchmark to test the insertion performance of v0.11.3 and v0.12.0, it was found that the insertion latency of v0.12.0 has increased a lot compared with v0.11.3, and the insertion speed has also been reduced.

      Performance report:

      Config:

      client_num=1;storage_num=1;device_num=1;sensor_num=1;loop=20,000;batch_size=1000;

      V0.12.0 V0.12.0 V0.11.3 V0.11.3
      Insertion Speed(Points/s) Average
      Latency
      (ms)
      Insertion
      Speed(Points/s)
      Average
      Latency(ms)
      154361.12 6.30 293976.71 3.33      
      155671.99 6.25 226994.21 4.28      

      Using JProfiler to sample the insertion threads of the two versions, it was found that the InsertTabletPlan::updateTimesCache method of the v0.12 version has unusually high autoboxing and unboxing overhead (~20%), which should be the root cause of the insertion performance degradation.

      Attachments

        Activity

          People

            Unassigned Unassigned
            suyurong Steve Yurong Su
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: