Executing native Java']Java code in R: an approach based on a local server

被引:1
|
作者
Fortin, Mathieu [1 ]
机构
[1] Canadian Forest Serv, Canadian Wood Fibre Ctr, Ottawa, ON, Canada
关键词
Interoperability; !text type='Java']Java[!/text] local server; TCP/IP connection; R vectorization; !text type='Java']Java[!/text] Native Interface;
D O I
10.7717/peerj-cs.300
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
The R language is widely used for data analysis. However, it does not allow for complex object-oriented implementation and it tends to be slower than other languages such as Java, C and C++. Consequently, it can be more computationally efficient to run native Java code in R. To do this, there exist at least two approaches. One is based on the Java Native Interface (JNI) and it has been successfully implemented in the rJava package. An alternative approach consists of running a local server in Java and linking it to an R environment through a socket connection. This alternative approach has been implemented in an R package called J4R. This article shows how this approach makes it possible to simplify the calls to Java methods and to integrate the R vectorization. The downside is a loss of performance. However, if the vectorization is used in conjunction with multithreading, this loss of performance can be compensated for.
引用
收藏
页数:27
相关论文
共 50 条
  • [41] Java']JavaStat: a Java']Java/R-based statistical computing environment
    Harner, E. James
    Luo, Dajie
    Tan, Jun
    COMPUTATIONAL STATISTICS, 2009, 24 (02) : 295 - 302
  • [42] Reassessing Java']Java Code Readability Models with a Human-Centered Approach
    Sergeyuk, Agnia
    Lvova, Olga
    Titov, Sergey
    Serova, Anastasiia
    Bagirov, Farid
    Kirillova, Evgeniia
    Bryksin, Timofey
    PROCEEDINGS 2024 32ND IEEE/ACM INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION, ICPC 2024, 2024, : 225 - 235
  • [43] Java']Java Source Code Protection Based on JNI and AES Algorithm
    Hong, Zhao
    Nan, Guo
    2017 IEEE INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND ENGINEERING (CSE) AND IEEE/IFIP INTERNATIONAL CONFERENCE ON EMBEDDED AND UBIQUITOUS COMPUTING (EUC), VOL 1, 2017, : 846 - 849
  • [44] PJCT: Penetration Testing based JAVA']JAVA Code Testing Tool
    Jain, Shikha
    Johari, Rahul
    Kaur, Arvinder
    2015 INTERNATIONAL CONFERENCE ON COMPUTING, COMMUNICATION & AUTOMATION (ICCCA), 2015, : 800 - 805
  • [45] Detecting Java']Java Code Clones Based on Bytecode Sequence Alignment
    Yu, Dongjin
    Yang, Jiazha
    Chen, Xin
    Chen, Jie
    IEEE ACCESS, 2019, 7 : 22421 - 22433
  • [46] SECURITY RISKS IN JAVA']JAVA-BASED MOBILE CODE SYSTEMS
    Binder, Walter
    Roth, Volker
    SCALABLE COMPUTING-PRACTICE AND EXPERIENCE, 2006, 7 (04): : 1 - 11
  • [47] Example-Based Vulnerability Detection and Repair in Java']Java Code
    Zhang, Ying
    Xiao, Ya
    Kabir, Md Mahir Asef
    Yao, Danfeng
    Meng, Na
    30TH IEEE/ACM INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC 2022), 2022, : 190 - 201
  • [48] Rule based production systems for automatic code generation in Java']Java
    Bajwa, Imran Sarwar
    Siddique, M. Imran
    Choudhary, M. Abbas
    2006 1ST INTERNATIONAL CONFERENCE ON DIGITAL INFORMATION MANAGEMENT, 2006, : 300 - +
  • [49] Java']Java code patterns for Petri net based behavioral models
    Hagge, N
    Wagner, B
    2005 3RD IEEE INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS (INDIN), 2005, : 450 - 455
  • [50] Efficient Java']Java Native Interface for Android Based Mobile Devices
    Lee, Yann-Hang
    Chandrian, Preetham
    Li, Bo
    TRUSTCOM 2011: 2011 INTERNATIONAL JOINT CONFERENCE OF IEEE TRUSTCOM-11/IEEE ICESS-11/FCST-11, 2011, : 1202 - 1209