[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"detail-sidebar-cat-0-en-105":3,"doc-seo-183615-105":59,"doc-detail-183615-en":130},{"code":4,"msg":5,"data":6},0,"success",[7,13,18,23,28,33,38,43,48,51,55],{"id":8,"doc_module":4,"doc_module_name":9,"category_name":10,"show_sort_weight":11,"slug":12},1,"Document","Story & Novel",90,"story-novel",{"id":14,"doc_module":4,"doc_module_name":9,"category_name":15,"show_sort_weight":16,"slug":17},2,"Literature",80,"literature",{"id":19,"doc_module":4,"doc_module_name":9,"category_name":20,"show_sort_weight":21,"slug":22},4,"Exam",70,"exam",{"id":24,"doc_module":4,"doc_module_name":9,"category_name":25,"show_sort_weight":26,"slug":27},5,"Comic",60,"comic",{"id":29,"doc_module":4,"doc_module_name":9,"category_name":30,"show_sort_weight":31,"slug":32},6,"Technology",50,"technology",{"id":34,"doc_module":4,"doc_module_name":9,"category_name":35,"show_sort_weight":36,"slug":37},7,"Healthcare",40,"healthcare",{"id":39,"doc_module":4,"doc_module_name":9,"category_name":40,"show_sort_weight":41,"slug":42},8,"Research & Report",30,"research-report",{"id":44,"doc_module":4,"doc_module_name":9,"category_name":45,"show_sort_weight":46,"slug":47},9,"Religion & Spirituality",20,"religion-spirituality",{"id":46,"doc_module":4,"doc_module_name":9,"category_name":49,"show_sort_weight":46,"slug":50},"World Cup","world-cup",{"id":52,"doc_module":4,"doc_module_name":9,"category_name":53,"show_sort_weight":52,"slug":54},10,"Lifestyle","lifestyle",{"id":56,"doc_module":4,"doc_module_name":9,"category_name":57,"show_sort_weight":24,"slug":58},19,"General","general",{"code":4,"msg":60,"data":61},"ok",{"site_id":62,"language":63,"slug":64,"title":65,"keywords":66,"description":67,"schema_data":68,"social_meta":123,"head_meta":125,"extra_data":127,"updated_unix":129},105,"en","redundancy-ratio-of-java-applications-technical-paper-object-replica-detection-approach","Redundancy Ratio of Java applications - Technical paper - Object replica detection approach","","A study on redundancy in Java applications introduces an object replica detection method to identify equivalent versus non-equivalent objects using sampled memory-access events. The approach records a triple of program context (e.g., allocation and access line), an offset within the object, and the observed value. It later installs watchpoints at matching offsets in subsequent objects and compares trapped values to decide replication contribution. Evaluation includes accuracy and false-positive rate computed from replicated and not-replicated outcomes, yielding a measured correctness of 94.9% with a 5.9% false-positive rate.",{"@graph":69,"@context":122},[70,84,105],{"@type":71,"itemListElement":72},"BreadcrumbList",[73,77,79,82],{"item":74,"name":75,"@type":76,"position":8},"https://docshare.wps.com","Home","ListItem",{"item":78,"name":9,"@type":76,"position":14},"https://docshare.wps.com/document/",{"item":80,"name":30,"@type":76,"position":81},"https://docshare.wps.com/document/technology/",3,{"item":83,"name":65,"@type":76,"position":19},"https://docshare.wps.com/document/redundancy-ratio-of-java-applications-technical-paper-object-replica-detection-approach/183615/",{"url":83,"name":65,"@type":85,"image":86,"author":91,"headline":65,"publisher":94,"fileFormat":97,"inLanguage":63,"description":67,"dateModified":98,"datePublished":99,"encodingFormat":97,"isAccessibleForFree":100,"interactionStatistic":101},"DigitalDocument",{"url":87,"@type":88,"width":89,"height":90},"https://docshare.wps.com/thumbnails/redundancy-ratio-of-java-applications-technical-paper-object-replica-detection-approach/183615.png","ImageObject",300,407,{"name":92,"@type":93},"Anda","Person",{"url":74,"name":95,"@type":96},"DocShare","Organization","application/pdf","2026-09-27","2026-09-02",true,{"@type":102,"interactionType":103,"userInteractionCount":81},"InteractionCounter",{"@type":104},"ViewAction",{"@type":106,"mainEntity":107},"FAQPage",[108,114,118],{"name":109,"@type":110,"acceptedAnswer":111},"What triple does the method remember for object replica detection?","Question",{"text":112,"@type":113},"It records the program context line, the offset within the object, and the value observed at that offset for future comparisons.","Answer",{"name":115,"@type":110,"acceptedAnswer":116},"How does a watchpoint support determining equivalent objects?",{"text":117,"@type":113},"A watchpoint is armed at the same offset in a later object; when triggered, the trapped value is compared with the previously recorded value to classify objects as equivalent or non-equivalent.",{"name":119,"@type":110,"acceptedAnswer":120},"What evaluation results are reported for the detection approach?",{"text":121,"@type":113},"The document reports correctness of 94.9% and a false positive rate of 5.9% based on a contingency table of replicated vs. not replicated cases.","https://schema.org",{"og:url":83,"og:type":124,"og:title":65,"og:site_name":95,"og:description":67},"article",{"robots":126,"canonical":83},"index,follow",{"doc_id":128,"site_id":62},183615,1790508326,{"code":4,"msg":5,"data":131},{"doc_id":128,"user_id":132,"nickname":92,"user_avatar":133,"doc_module":4,"category_id":29,"category_name":30,"doc_title":65,"doc_description":67,"doc_content":134,"file_id":135,"file_url":136,"file_type":137,"file_size":138,"view_count":81,"is_deleted":4,"is_public":8,"is_downloadable":8,"audit_status":8,"page_count":139,"language":140,"language_code":63,"site_id":62,"html_lang":63,"table_of_contents":141,"faqs":142,"seo_title":143,"seo_description":67,"update_tm":144,"read_time":145},962075006959,"https://ap-avatar.wpscdn.com/avatar/e0002397efbe92a78e?_k=1776741047341049297","| Redundancy Ratio of Java applications |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |\n|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |\n| |  | |  | | |  | | | |  |  | | | | |  |  | | | |\n\n| 􀀙++(. | 􀀗\"!0*!􀀞* 3 !\"/\" /&+* | 􀀐-+..􀀄+ '\" /􀀞*􀀞(3.&. | 􀀖-+ 􀀞 &(&./&􀀞*􀀞(3.&. | 􀀘􀀞),(&*$ 2&/%%􀀞-!2􀀞-\" .0,,+-/ | 􀀗0*/&)\"+1\"-%\"􀀞!􀀃􀀃 |\n| --- | --- | --- | --- | --- | --- |\n| 􀀕􀀒􀀛􀀖\"-\\# | 􀀁 | 􀀁 | 􀀁 | 􀀁 | 􀀏􀀂 |\n| 􀀕􀀑􀀖 􀀜􀀉􀀍􀀝 | 􀀁 | 􀀁 􀀃 | 􀀂 | 􀀂 | 􀀈􀀆􀀈􀀂 |\n| 􀀐􀀞 %\"/+- 􀀜􀀉􀀇􀀝 | 􀀁 | 􀀂 | 􀀂 | 􀀂 | 􀀇􀀉􀀉􀀂 |\n| 􀀙+!!(\"- 􀀜􀀉􀀏􀀝 | 􀀁 | 􀀂 | 􀀂 | 􀀂 | 􀀇􀀌􀀂 |\n| 􀀒􀀕􀀓􀀙 􀀜􀀊􀀎􀀝 | 􀀂 | 􀀁 | 􀀁 | 􀀂 | 􀀉􀀂 |\n| 􀀔\")+&4\"(/ 􀀜􀀇􀀋􀀝 | 􀀁 | 􀀂 | 􀀂 | 􀀂 | 􀀈􀀆􀀈􀀂 |\n| 􀀓!+ /+- 􀀜􀀋􀀆􀀝 | 􀀁 | 􀀂 | 􀀂 | 􀀂 | 􀀋􀀂 |\n\n\n| Example 1: Example of Object Replica Detection. |\n| --- |\n| 1 i = 0;\u003Cbr>2 while i \u003C 4 do\u003Cbr>3 allocate an object O;\u003Cbr>4 initialize O;\u003Cbr>5 use O; //use O for the %rst time\u003Cbr>6 update O;\u003Cbr>7 use O; //use O for the second time\u003Cbr>8 i++;\u003Cbr>9 end |\n| Given the nature of sampling, let’s assume that memory-access samples occur on line 5 in iteration 1 of the loop (while accessing object 􀀡 1) and line 7 in iteration 3 (while accessing object 􀀡3), as shown in Figure 2 . Assume, the sample in iteration 1 for 􀀡 1 on line 5 happens at the relative o&set O\"1 from the beginning of the object and the value at O\"1 is 􀀢1; OJXPerf remembers the triple—line 5, O\"1 , and􀀢1 —for future use. For the next allocation,􀀡2 , we probabilistically skip and do nothing. When 􀀡3 starts tobe accessed, we decide to monitor its contents at o&set O\"1 , and hence arm a watchpoint to trap on access to o&set O\"1 from the beginning of 􀀡3 . This watchpoint traps when the program accesses 􀀡3 on line 5 . Let the contents at 􀀡3 + O\"1 be 􀀢1$ when the trap happens. We compare 􀀢1 and 􀀢1$ and if they are the same, 􀀡 1 and 􀀡3 contribute towards the number of equivalent objects allocated in context line 3; otherwise they contribute towards non-equivalent objects allocated in context line 3 .\u003Cbr>The next sample happens on line 7, for the same object 􀀡3 ato&set O\"2 in iteration 3 of the loop. Let the value at O\"2 for 􀀡3 be 􀀢2 . We remember the triple — line 7, O\"2 , and 􀀢2 — for future use. When 􀀡4 starts to be accessed in iteration 4 of the loop, wearm a watchpoint at address O\"2 from the beginning of 􀀡4 . This watchpoint traps when the program accesses 􀀡4 on line 7 . Let the value at the trapped location be 􀀢2$ . As before, depending on whether 􀀢2 and 􀀢2$ are the same or not, they contribute towards equivalent or non-equivalent objects allocated in context line 3 . Figure 2 shows that􀀢1 equals to 􀀢1$ (the blue star), which means that the values stored in an o&set O\"1 of 􀀡1 and 􀀡3 are the same. Also, the red star in Figure 2 shows that the values stored in an o&set O\"2 of 􀀡3 and 􀀡4 are di&erent (􀀢2 doesn’t equal to 􀀢2$), which means that 􀀡3 and 􀀡4 must be two objects that have di&erent contents.\u003Cbr>As the program continues, OJXPerf performs the same redundancy checks for other samples taken from objects {􀀡1 , 􀀡2 , 􀀡3 , 􀀡4 } . |\n\n| Queue Q 1 Sample ... Sample ...\u003Cbr>\u003Cbr>\u003Cbr>Save Info\u003Cbr>\u003Cbr>Save Info\u003Cbr>\u003Cbr>Object Memory Access Stream\u003Cbr>\u003Cbr>Off 1 ... Offn |  |\n| --- | --- |\n|  | Memory Access |\n\n\n| T1\u003Cbr>Timeline\u003Cbr>T2 | Queue Q 1\u003Cbr>Queue Q 2\u003Cbr>Object Memory\u003Cbr>Layout\u003Cbr>Object Memory\u003Cbr>Layout | \u003Cbr>\u003Cbr>Retrieve Info |  |\n| --- | --- | --- | --- |\n|  |  | Watchpoint Triggerd\u003Cbr>Offm ... Offn |  |\n|  |  | Memory Access |  Deploy Debug Resgister |\n\n\n| \"-)4􀀅>794, 􀀒8841+);176: |  | 􀀚6-..1+1-6+@ |  |  |  | 8;151A);176 |  |  |  |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n|  |  | !97*4-5);1+ 􀀔7,- | 􀀃 􀀃\"􀀗􀀄 | 􀀅 | 􀀄 􀀃􀀝􀀓􀀗􀀄 | %\\# 􀀃C􀀄 | %􀀙 􀀃􀀂􀀄 | %􀀔􀀞 􀀃􀀂􀀄 | %􀀖􀀚 􀀃􀀂􀀄 |\n| \\#77; '􀀋􀀇( |  | !0):- 8;176:􀀆2)=) 􀀃􀀏􀀋􀀄 | 􀀏􀀊􀀆􀀐􀀂 | 􀀉􀀇􀀆􀀏􀀂 | 􀀍􀀊􀀆􀀈􀀂 | 􀀈􀀆􀀈􀀎B􀀇􀀆􀀇􀀉 | 􀀎􀀆􀀌􀀂 | 􀀈􀀈􀀆􀀉􀀂 | 􀀈􀀇􀀆􀀊􀀂 |\n| 􀀕--84-)9616/􀀋􀀛 \\#)5-􀀕1.. '􀀉􀀏( |  | 􀀒999)@ 8;176:􀀙-48-9􀀆2)=) ","cbCaid5zHWpd7X6B","https://ap.wps.com/l/cbCaid5zHWpd7X6B","pdf",1230583,13,"English","# Object replica detection method\n## Sampling and triple recording\n## Watchpoint trapping and value comparison\n# Evaluation metrics\n## Correctness\n## False positive rate","[{\"question\":\"What triple does the method remember for object replica detection?\",\"answer\":\"It records the program context line, the offset within the object, and the value observed at that offset for future comparisons.\"},{\"question\":\"How does a watchpoint support determining equivalent objects?\",\"answer\":\"A watchpoint is armed at the same offset in a later object; when triggered, the trapped value is compared with the previously recorded value to classify objects as equivalent or non-equivalent.\"},{\"question\":\"What evaluation results are reported for the detection approach?\",\"answer\":\"The document reports correctness of 94.9% and a false positive rate of 5.9% based on a contingency table of replicated vs. not replicated cases.\"}]","Redundancy Ratio of Java applications - Technical paper - Object replica detection approach | PDF",1788353362,33]