What is the difference between PJRT, IFRT, and TFRT?

162 views
Skip to first unread message

Anthony Platanios

unread,
Jul 23, 2024, 11:08:09 AMJul 23
to OpenXLA Discuss
Hi all,

I previously posted this question on GitHub but I'm not sure if that was the more appropriate venue and I just found out about this group so I decided to cross-post here.

I'm currently building a library in Rust that leverages XLA and PJRT and while going through the APIs and the implementation of the Python bindings, I'm a little confused about the terminology and the various interfaces. Specifically, I ran into get_tfrt_cpu_client and its implementation in the Python bindings and I have a couple of questions related to it:

  1. I see that this wrapping the PjRtClient from xla/pjrt into an ifrt::PjRtClient from xla/python/pjrt_ifrt when a distributed client is provided. What is the difference between the two? Specifically, the CPU PjRtClient from xla/pjrt seems to support a distributed setting so what do the Python bindings do differently and is it necessary or is it a by-product of an older implementation?
  2. I think I understand what PJRT is and its goals. However, I cannot find much information about IFRT and do not understand what that part of the codebase does. It also appears to be specific to the Python bindings. Is this true? And more generally, what does it offer on top of PJRT?
  3. I also see the term TFRT used sometimes in the codebase. I assume this stands for something like "TensorFlow Runtime" (?). Is this also a remnant of an older implementation or does it offer something on top of PJRT?
Thank you!

Kevin Gleason

unread,
Jul 24, 2024, 4:38:25 PMJul 24
to OpenXLA Discuss, Anthony Platanios
Hello!

Thanks for signal boosting this GH issue! It looks like there was a reply and the folks I planned to CC to this email are already mentioned there :).

To close off this thread -- let's consolidate discussion on the GH issue at: https://github.com/openxla/xla/issues/15168

Best,
Kevin

Anthony Platanios

unread,
Jul 25, 2024, 1:07:56 AMJul 25
to OpenXLA Discuss, Kevin Gleason, Anthony Platanios
Hi Kevin,

Thanks for your response! Yes let's continue the discussion on the GH issue.

Thank you,
Anthony

Reply all
Reply to author
Forward
0 new messages