1 2 Previous Next 25 Replies Latest reply: Oct 20, 2009 9:56 PM by ChaoHuang RSS

    How can I optimize  insert(put) performance?

    727712
      Hi,everone!
      I use JE DPL API to insert(put) my entity named AuthService with 5 SecondaryKey,40 fields.
      Excute Insert 100000 Records, total times 40172ms, 2456 Records/sec ,quite slow!!!,why??? can i tune it up?
      tx commit execute step is 1000 Records。

      My OS is:
      ===========================================================
      Win XP2
      Interl CPU T2080 1.73GHZ*2
      2.0GB Memory Size
      160GB Disk Size
      -Xmx1024M

      My Environment Configs is:
      ===========================================================
      EnvironmentConfig envConfig = new EnvironmentConfig();
      envConfig.setAllowCreate(true);
      envConfig.setTransactional(true);
      envConfig.setCacheSize(300*1024*1024);
      envConfig.setTxnNoSync(false);
      envConfig.setTxnWriteNoSync(true);
      StoreConfig storeConfig = new StoreConfig();
      storeConfig.setAllowCreate(true);
      storeConfig.setTransactional(true);

      EntityStore store = new EntityStore(env, "AuthService", storeConfig);
      Transaction tx = store.getEnvironment().beginTransaction(null, null);
      AuthServiceAccenssor asAcc = new AuthServiceAccenssor(store);
      asAcc.loadAuthServiceDb(store, tx, records, step);


      My entity named AuthService is:
      ===============================================================
      @PrimaryKey
      public String id;
      @SecondaryKey(relate = MANY_TO_ONE)
      public String userid;
      @SecondaryKey(relate = MANY_TO_ONE)
      public String areaid;
      @SecondaryKey(relate = MANY_TO_ONE)
      public String netid;
      @SecondaryKey(relate = MANY_TO_ONE)
      public String stockid;
      @SecondaryKey(relate = MANY_TO_ONE)
      public String productid;
      .....................
      long i = 0;
      AuthService = new AuthService();
      while (true) {
      String id = String.valueOf(i++);
      as.id = id;
      as.userid = "userid"+id;
      as.areaid = "areaid"+id;
      as.netid = "netid"+id;
      as.stockid= "stockid"+id;
      as.productid = "productid"+id;
      as.productname = "Digital TV set-top boxes"+id;
      as.isgroup ="1";
      as.paymode = "cashe";
      as.createdate = new Date();
      as.startdate =new Date();
      as.enddate = new Date();
      as.pausedate = new Date();
      as.resumedate = new Date();
      as.realstartdate = new Date();
      as.realenddate = new Date();
      as.formerstatus ="0";
      as.status= "1";
      as.freestartdate = (new Date());
      as.freeenddate = (new Date());
      as.refpricefix = 933l;
      as.pricefix = 923l;
      as.isrenew = "1";
      as.auditorid = "auditorid"+i;
      as.auditdate = new Date();
      as.auditremark = "argee!argee!";
      as.ispass ="1";
      as.operatorid ="Operatorid"+i;
      as.operatedate = new Date();
      as.billid = "billid"+i;
      as.closedate = new Date();
      as.issendcmdahead = "0";
      as.remark ="";
      as.divideid = "divideid"+i;
      as.billTypeId = "billTypeId"+i;
      as.billingCyclecount = 14304;
      as.orderUserId = "userid"+i;
      as.isGenBankPayRecord = "234";
      as.isBankPay = "1";
      as.billingCount = 123;
      as.productInstanceId = "ProductInstanceId"+i;
      as.billingCyclePeriodValue = 324;
      as.productInstanceName ="Digital TV set-top boxes Purchase";
      as.cmngStbTypeName = "persional customer!";

      authServiceById.putNoReturn(tx,as);

      if ( i% steps == 0){
      tx.commit();
      tx=null;
      tx = store.getEnvironment().beginTransaction(null, null);
      }

      if ( i % records == 0){
      break;
      }
      }


      My Stats is:
      ===============================================================

      Compression stats
      splitBins=0
      dbClosedBins=0
      cursorsBins=0
      nonEmptyBins=0
      processedBins=0
      inCompQueueSize=0

      Eviction stats
      nEvictPasses=0
      nNodesSelected=0
      nNodesScanned=0
      nNodesExplicitlyEvicted=0
      nRootNodesEvicted=0
      nBINsStripped=0
      requiredEvictBytes=0

      Checkpoint stats
      nCheckpoints=6
      lastCheckpointId=6
      nFullINFlush=602
      nFullBINFlush=439
      nDeltaINFlush=1,578
      lastCheckpointStart=0xa/0x20f8ad
      lastCheckpointEnd=0xa/0x2a540b
      endOfLog=0xa/0x7a4c53

      Cleaner stats
      cleanerBacklog=0
      nCleanerRuns=0
      nCleanerDeletions=0
      nINsObsolete=0
      nINsCleaned=0
      nINsDead=0
      nINsMigrated=0
      nLNsObsolete=0
      nLNsCleaned=0
      nLNsDead=0
      nLNsLocked=0
      nLNsMigrated=0
      nLNsMarked=0
      nLNQueueHits=0
      nPendingLNsProcessed=0
      nMarkedLNsProcessed=0
      nToBeCleanedLNsProcessed=0
      nClusterLNsProcessed=0
      nPendingLNsLocked=0
      nCleanerEntriesRead=0

      Cache stats
      nNotResident=0
      nCacheMiss=0
      nLogBuffers=3
      bufferBytes=3,145,728
      dataBytes=106,651,450
      adminBytes=5,559
      lockBytes=560
      cacheTotalBytes=109,803,297
      sharedCacheTotalBytes=0
      nSharedCacheEnvironments=0

      IO Stats
      nRandomReads=0
      nRandomWrites=11
      nSequentialReads=13
      nSequentialWrites=185
      nRandomReadBytes=0
      nRandomWriteBytes=418
      nSequentialReadBytes=26,624
      nSequentialWriteBytes=108,012,175

      Logging stats
      nFSyncs=7
      nFSyncRequests=7
      nFSyncTimeouts=0
      nRepeatFaultReads=0
      nTempBufferWrite=0
      nRepeatIteratorReads=0
      nFileOpens=24
      nOpenFiles=0
      totalLogSize=108,012,175

      records:100000
      Excute TestJEDPLAS Read total times 9516ms

      Edited by: user12054405 on 2009-10-14 上午2:30
        • 1. Re: How can I optimize  insert(put) performance?
          ChaoHuang
          Like what I said in the reply to your email (address: xin -- -- at gmail dot com), I think you could use nosync, disable cleaner and checkpointer during bulk loading. Once you finish the loading, you then re-open the JE environment and turn the settings back.

          You may also want to try:
          - increase your cache size (I saw you set a 1024M JVM heap, why are you assigning only 300M cache to JE? What is the other 724M JVM heap reserved for?)
          - increase JE's log file size (e.g. 50M, the default is 10M)
          - use multi-thread
          - tune the JVM (heap size, gc, etc)

          You may also find this OTN post helpful: bulk-loading performance

          Again, performance relies on a lot of factors. To speed up your insert performance, you may consider:
          - well design your data structures and algorithms.
          - configure your platform (OS, hardware, etc) properly.
          - play with JE and find the best settings/parameters that suit your usage scenario(s) - e.g. one configurations for bulk loading, another different config for your production use.

          Chao Huang
          Oracle Berkeley DB

          Edited by: Linda Lee on Oct 15, 2009 9:07 AM

          obfuscated email address
          • 2. Re: How can I optimize  insert(put) performance?
            727712
            hi, Chao Huang,thx!

            I try like you tell,modify some config,like this:

            envConfig.setCachePercent(60);
            envConfig.setTxnNoSync(true);
            envConfig.setConfigParam(EnvironmentConfig.LOG_FILE_MAX ,"50000000");

            excute result:
            Excute TestJEDPLAS TxnNoSync true, Insert 100000 Records, Step 1000, Consume total times 38422ms, 2603 records/s.
            Efficiency did not improve significantly .

            but this is not what we expected that TxnNoSync=true
            Like this hardware env our Target is 5k+/sec。

            Edited by: user12054405 on 2009-10-15 上午12:47
            • 3. Re: How can I optimize  insert(put) performance?
              724410
              Have you tried storeConfig.setDeferredWrite(true)?
              • 4. Re: How can I optimize  insert(put) performance?
                ChaoHuang
                Hi,

                I modified my program as at: http://www.bdbchina.com/2009/09/berkeley-db-java%E7%89%88%E6%80%A7%E8%83%BD%E6%B5%8B%E8%AF%95/ to persist your AuthService.java. And I got: Executed 1000000 INSERT ops in 107672 ms.

                My platform:
                - DELL OptiPlex 745 desktop(Intel(R) Core(TM)2 CPU 6400, 2G memory, running Ubuntu 8.04 Server x86_64)
                - java version "1.6.0_14"

                The command-line arguments and settings:
                - java -server -Xms1024m -Xmx1024m -XX:+UseConcMarkSweepGC -XX:+UseAdaptiveGCBoundary -XX:+DisableExplicitGC -cp je.jar:. MyExample -h db -useTxns -syncCommit -numThreads 1 -itemsPerTxn 100 -cacheSize 800000000 -logFileSize 50000000 -numOperations 1000000 -operationType INSERT
                - je.log.fileMax=50M
                - je.version=4.0.15
                - disabled JE cleaner and checkpointer threads

                The output:
                Command-line input arguments:
                -h db -useTxns -syncCommit -numThreads 1 -itemsPerTxn 100 -cacheSize 800000000 -logFileSize 50000000 -numOperations 1000000 -operationType INSERT je.version=4.0.15
                Test configurations:
                TestConfig={  dirtyRead=false preload=false deferredWrite=false syncCommit=true useTxns=true numberThreads=1 numOperations=1000000 operationType=INSERT itemsPerTxn=100 logFileSize=50000000 cacheSize=800000000 envHome=db }

                The DPL Entity is:
                AuthService={ id=0 userid=userid0 areaid=areaid0 netid=netid0 stockid=stockid0 productid=productid0 productname=Digital TV Top Set0 isgroup=aaaabbbbccccddddeeee paymode=aaaabbbbccccddddeeee createdate=Thu Oct 15 08:43:39 GMT 2009 startdate=Thu Oct 15 08:43:39 GMT 2009 enddate=Thu Oct 15 08:43:39 GMT 2009 pausedate=Thu Oct 15 08:43:39 GMT 2009 resumedate=Thu Oct 15 08:43:39 GMT 2009 realstartdate=Thu Oct 15 08:43:39 GMT 2009 realenddate=Thu Oct 15 08:43:39 GMT 2009 formerstatus=aaaabbbbccccddddeeee status=aaaabbbbccccddddeeee freestartdate=Thu Oct 15 08:43:39 GMT 2009 freeenddate=Thu Oct 15 08:43:39 GMT 2009 refpricefix=12345678 pricefix=1234567 isrenew=aaaabbbbccccddddeeee auditorid=aaaabbbbccccddddeeee auditdate=Thu Oct 15 08:43:39 GMT 2009 auditremark=aaaabbbbccccddddeeee ispass=aaaabbbbccccddddeeee operatorid=aaaabbbbccccddddeeee operatedate=Thu Oct 15 08:43:39 GMT 2009 billid=aaaabbbbccccddddeeee closedate=Thu Oct 15 08:43:39 GMT 2009 issendcmdahead=aaaabbbbccccddddeeee remark=aaaabbbbccccddddeeee divideid=aaaabbbbccccddddeeee billTypeId=aaaabbbbccccddddeeee billingCyclecount=888888 orderUserId=aaaabbbbccccddddeeee isGenBankPayRecord=aaaabbbbccccddddeeee isBankPay=aaaabbbbccccddddeeee billingCount=999999 productInstanceId=aaaabbbbccccddddeeee billingCyclePeriodValue=12345 productInstanceName=aaaabbbbccccddddeeee cmngStbTypeName=aaaabbbbccccddddeeee }

                Access method thread: 0 started.
                Access method thread 0 exiting cleanly. Executed 1000000 INSERT ops in 107672 ms.

                Edited by: Chao Huang on Oct 15, 2009 4:50 PM

                Edited by: Chao Huang on Oct 15, 2009 4:53 PM
                • 5. Re: How can I optimize  insert(put) performance?
                  ChaoHuang
                  I also tried with je.version=3.3.87 and got: Executed 1000000 INSERT ops in 110791 ms.
                  • 6. Re: How can I optimize  insert(put) performance?
                    727712
                    I modified your program as at: http://www.bdbchina.com/2009/09/berkeley-db-java%E7%89%88%E6%80%A7%E8%83%BD%E6%B5%8B%E8%AF%95/ to persist my AuthService.java.
                    And I got: slowlly too!

                    I think my hardware bottlenecks that may exist.

                    1、Do You sure AuthService with 5 SecondaryKey?
                    2、What is the configuration of your hard drive? use san/nas tech? we havn't.
                    3、Your I/O is highly active?


                    Add-ons:
                    when put datas,at same time we use iostat,get this on our linux os:

                    Excute TestJEDPLAS TxnNoSync false, Insert 1000000 Records, Step 1000, Consume total times 223936ms

                    iostat -x 1 100

                    avg-cpu: %user %nice %sys %iowait %idle
                    34.65 0.00 2.97 15.84 46.53

                    Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
                    sda 0.00 1407.92 0.00 27.72 0.00 11532.67 0.00 5766.34 416.00 0.43 16.43 12.71 35.25
                    sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

                    avg-cpu: %user %nice %sys %iowait %idle
                    38.69 0.00 0.50 10.55 50.25

                    Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
                    sda 0.00 859.00 0.00 17.00 0.00 7040.00 0.00 3520.00 414.12 0.28 16.94 14.12 24.00
                    sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

                    avg-cpu: %user %nice %sys %iowait %idle
                    35.32 0.00 1.49 17.91 45.27

                    Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
                    sda 0.00 1527.00 0.00 35.00 0.00 12552.00 0.00 6276.00 358.63 0.51 14.63 12.34 43.20
                    sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

                    avg-cpu: %user %nice %sys %iowait %idle
                    32.66 0.00 0.50 16.08 50.75

                    Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
                    sda 0.00 1713.00 0.00 31.00 0.00 12728.00 0.00 6364.00 410.58 0.47 14.58 12.52 38.80
                    sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

                    Edited by: user12054405 on 2009-10-15 上午3:06

                    Edited by: user12054405 on 2009-10-15 上午3:11
                    • 7. Re: How can I optimize  insert(put) performance?
                      727712
                      We have tried,But we think it not safe enough for us! use DeferredWrite must cancel transaction!
                      • 8. Re: How can I optimize  insert(put) performance?
                        ChaoHuang
                        >
                        I think my hardware bottlenecks that may exist.

                        1、Do You sure AuthService with 5 SecondaryKey?
                        Yes - the AuthService with 1 PK + 5 SK.
                        2、What is the configuration of your hard drive? use san/nas tech? we havn't.
                        Standard DELL OptiPlex 745 desktop (Intel Core2 CPU 6400, 2G memory, 250G Hard disk with write cache turned on, running Ubuntu 8.04 Server x86_64). No use of SAN/NAS.
                        • 9. Re: How can I optimize  insert(put) performance?
                          727712
                          3、Your I/O is highly active?

                          Add-ons:
                          when put datas,at same time we use iostat,get this on our linux os:

                          Excute TestJEDPLAS TxnNoSync false, Insert 1000000 Records, Step 1000, Consume total times 223936ms

                          iostat -x 1 100

                          avg-cpu: %user %nice %sys %iowait %idle
                          34.65 0.00 2.97 15.84 46.53


                          Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
                          sda 0.00 1407.92 0.00 27.72 0.00 11532.67 0.00 5766.34 416.00 0.43 16.43 12.71 35.25
                          sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


                          avg-cpu: %user %nice %sys %iowait %idle
                          38.69 0.00 0.50 10.55 50.25


                          Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
                          sda 0.00 859.00 0.00 17.00 0.00 7040.00 0.00 3520.00 414.12 0.28 16.94 14.12 24.00
                          sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


                          avg-cpu: %user %nice %sys %iowait %idle
                          35.32 0.00 1.49 17.91 45.27


                          Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
                          sda 0.00 1527.00 0.00 35.00 0.00 12552.00 0.00 6276.00 358.63 0.51 14.63 12.34 43.20
                          sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00


                          avg-cpu: %user %nice %sys %iowait %idle
                          32.66 0.00 0.50 16.08 50.75


                          Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
                          sda 0.00 1713.00 0.00 31.00 0.00 12728.00 0.00 6364.00 410.58 0.47 14.58 12.52 38.80
                          sr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
                          • 10. Re: How can I optimize  insert(put) performance?
                            ChaoHuang
                            avg-cpu: %user %nice %system %iowait %steal %idle
                            49.29 0.00 3.48 4.75 0.00 42.49

                            Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
                            sda 0.00 2902.50 0.00 295.40 0.00 25583.20 86.61 0.12 0.42 0.41 12.12

                            avg-cpu: %user %nice %system %iowait %steal %idle
                            44.52 0.00 2.85 5.26 0.00 47.37

                            Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
                            sda 0.00 2924.30 0.00 294.80 0.00 25730.40 87.28 0.13 0.43 0.42 12.48

                            avg-cpu: %user %nice %system %iowait %steal %idle
                            44.77 0.00 3.36 4.59 0.00 47.29

                            Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
                            sda 0.00 2996.20 0.00 286.40 0.00 26283.20 91.77 0.12 0.41 0.40 11.36
                            • 11. Re: How can I optimize  insert(put) performance?
                              727712
                              Data Comparison:
                              rrqm/s      wrqm/s      r/s      w/s     rsec/s      wsec/s     avgrq-sz     avgqu-sz     await     svctm     %util
                              our 0     1527     0     35     0     12552     358.63     0.51     14.63     12.34     43.2
                              your 0     2924     0     294     0     25730     87.28     0.13     0.43     0.42     12.48

                              What factors have led to large differences in indicators of w/s and svctm?

                              thx,for help!

                              Edited by: user12054405 on 2009-10-15 下午6:50

                              Edited by: user12054405 on 2009-10-15 下午7:00
                              • 12. Re: How can I optimize  insert(put) performance?
                                Charles Lamb
                                Hello,

                                I believe my colleague Chao is correct: you have your write cache disabled on your hardware and he has it enabled. That seems to be accounting for the difference in speed.

                                On Linux, you can check the state of the on-disk hardware cache by doing:

                                hdparm -W /dev/XXX

                                where XXX is the device. You will need to be root to execute this command.

                                I think you will find that your write cache is disabled.

                                It is my recollection (perhaps incorrect) that WinXP disables the hardware write cache by default. If that is correct, then it explains why you see similar results on both platforms.

                                Charles Lamb

                                Edited by: Linda Lee on Oct 16, 2009 3:28 PM

                                Changed "you do not have your write cache disabled but he does" => "you have your write cache disabled, and he has his write cache enabled"
                                • 13. Re: How can I optimize  insert(put) performance?
                                  Linda Lee-Oracle
                                  You may find it useful to write and run a simple Java program that does writes and fsyncs, to see what the possible throughput is on your hardware. If you contact Chao, he can give you a simple version that we call SyncTest.java. But basically, all it does is mimic the base i/o operations that JE is doing for a synchronous transactional commit:
                                      void fosWrite(boolean doSync)
                                          throws Exception {
                                  
                                          /* Setup file */
                                          File outputFile = new File("syncTest.data");
                                          outputFile.createNewFile();
                                          FileOutputStream file = new FileOutputStream(outputFile, true);
                                  
                                          /* Setup data. */
                                          byte[] data = new byte[writeSize];
                                          for (int i = 0; i < writeSize; i++) {
                                              data[i] = (byte) 1;
                                          }
                                  
                                          /* write and sync */
                                          long start = System.currentTimeMillis();
                                          FileDescriptor fd = file.getFD();
                                          for (int i = 0; i < numWrites; i++) {
                                              file.write(data);
                                  
                                              if (doSync) {
                                                  fd.sync();
                                              }
                                          }
                                          long end = System.currentTimeMillis();
                                  
                                          reportStats(start, end);
                                      }
                                  JE itself does a lot more computation that this, but this would give you an idea of the the theoretical best performance if you specify txn.commitSync().

                                  Regards,

                                  Linda
                                  • 14. Re: How can I optimize  insert(put) performance?
                                    727712
                                    Hi,Charles Lamb,thank you first!

                                    On linux:
                                    *# hdparm -I /dev/hdc*

                                    /dev/hdc:

                                    ATA device, with non-removable media
                                    Model Number: WDC WD6400AAKS-00A7B2
                                    Serial Number: WD-WMASY6216571
                                    Firmware Revision: 01.03B01
                                    Transport: Serial, SATA 1.0a, SATA II Extensions, SATA Rev 2.5
                                    Standards:
                                    Supported: 8 7 6 5
                                    Likely used: 8
                                    Configuration:
                                    Logical max current
                                    cylinders 16383 65535
                                    heads 16 1
                                    sectors/track 63 63
                                    --
                                    CHS current addressable sectors: 4128705
                                    LBA user addressable sectors: 268435455
                                    LBA48 user addressable sectors: 1250263728
                                    device size with M = 1024*1024: 610480 MBytes
                                    device size with M = 1000*1000: 640135 MBytes (640 GB)
                                    Capabilities:
                                    LBA, IORDY(can be disabled)
                                    Queue depth: 32
                                    Standby timer values: spec'd by Standard, with device specific minimum
                                    R/W multiple sector transfer: Max = 16 Current = 16
                                    Recommended acoustic management value: 128, current value: 254
                                    DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 *udma5 udma6
                                    Cycle time: min=120ns recommended=120ns
                                    PIO: pio0 pio1 pio2 pio3 pio4
                                    Cycle time: no flow control=120ns IORDY flow control=120ns
                                    Commands/features:
                                    Enabled Supported:
                                    * SMART feature set
                                    Security Mode feature set
                                    * Power Management feature set
                                    * Write cache
                                    * Look-ahead
                                    * Host Protected Area feature set
                                    * WRITE_BUFFER command
                                    * READ_BUFFER command
                                    * NOP cmd
                                    * DOWNLOAD_MICROCODE
                                    Power-Up In Standby feature set
                                    * SET_FEATURES required to spinup after power up
                                    * SET_MAX security extension
                                    Automatic Acoustic Management feature set
                                    * 48-bit Address feature set
                                    * Device Configuration Overlay feature set
                                    * Mandatory FLUSH_CACHE
                                    * FLUSH_CACHE_EXT
                                    * SMART error logging
                                    * SMART self-test
                                    * General Purpose Logging feature set
                                    * 64-bit World wide name
                                    * Segmented DOWNLOAD_MICROCODE
                                    * SATA-I signaling speed (1.5Gb/s)
                                    * SATA-II signaling speed (3.0Gb/s)
                                    * Native Command Queueing (NCQ)
                                    * Host-initiated interface power management
                                    * Phy event counters
                                    DMA Setup Auto-Activate optimization
                                    * Software settings preservation
                                    Security:
                                    Master password revision code = 65534
                                    supported
                                    not enabled
                                    not locked
                                    frozen
                                    not expired: security count
                                    supported: enhanced erase
                                    118min for SECURITY ERASE UNIT. 118min for ENHANCED SECURITY ERASE UNIT.
                                    Checksum: correct

                                    *# hdparm -W 1 /dev/hdc*

                                    /dev/hdc:
                                    setting drive write-caching to 1 (on)

                                    *# java -Xmx1024M testdpl.TestJEDPLAS*
                                    Excute TestJEDPLAS TxnNoSync false, Insert 1000000 Records, Step 1000, Consume total times 523596ms, 1910 records/sec,No promotion!

                                    why?
                                    1 2 Previous Next