photon  1.1
Functions | Variables
photon_backend.c File Reference
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#include <unistd.h>
#include <inttypes.h>
#include <pthread.h>
#include <arpa/inet.h>
#include "libphoton.h"
#include "photon_backend.h"
#include "photon_forwarder.h"
#include "photon_buffertable.h"
#include "photon_exchange.h"
#include "photon_pwc.h"
#include "photon_coll.h"
#include "photon_request.h"
#include "photon_event.h"

Go to the source code of this file.

Functions

 SLIST_HEAD (pendingmemregs, photon_mem_register_req)
 
int _photon_init (photonConfig cfg, ProcessInfo *info, photonBufferHandle ss)
 
int _photon_cancel (photon_rid request, int flags)
 
int _photon_finalize ()
 
int _photon_register_buffer (void *addr, uint64_t size)
 
int _photon_unregister_buffer (void *addr, uint64_t size)
 
int _photon_test (photon_rid request, int *flag, int *type, photonStatus status)
 
int _photon_wait (photon_rid request)
 
int _photon_send (photonAddr addr, void *ptr, uint64_t size, int flags, photon_rid *request)
 
int _photon_recv (photon_rid request, void *ptr, uint64_t size, int flags)
 
int _photon_post_recv_buffer_rdma (int proc, void *ptr, uint64_t size, int tag, photon_rid *request)
 
int _photon_try_eager (int proc, void *ptr, uint64_t size, int tag, photon_rid *request, photonBufferHandle db)
 
int _photon_try_rndv (int proc, void *ptr, uint64_t size, int tag, photon_rid *request, photonBufferHandle db)
 
int _photon_post_send_buffer_rdma (int proc, void *ptr, uint64_t size, int tag, photon_rid *request)
 
int _photon_post_send_request_rdma (int proc, uint64_t size, int tag, photon_rid *request)
 
int _photon_wait_recv_buffer_rdma (int proc, uint64_t size, int tag, photon_rid *request)
 
int _photon_wait_send_buffer_rdma (int proc, uint64_t size, int tag, photon_rid *request)
 
int _photon_wait_send_request_rdma (int tag)
 
int _photon_post_os_put (photon_rid request, int proc, void *ptr, uint64_t size, int tag, uint64_t r_offset)
 
int _photon_post_os_get (photon_rid request, int proc, void *ptr, uint64_t size, int tag, uint64_t r_offset)
 
int _photon_post_os_put_direct (int proc, void *ptr, uint64_t size, photonBuffer rbuf, int flags, photon_rid *request)
 
int _photon_post_os_get_direct (int proc, void *ptr, uint64_t size, photonBuffer rbuf, int flags, photon_rid *request)
 
int _photon_send_FIN (photon_rid request, int proc, int flags)
 
int _photon_wait_any (int *ret_proc, photon_rid *ret_req)
 
int _photon_wait_any_ledger (int *ret_proc, photon_rid *ret_req)
 
int _photon_probe_ledger (int proc, int *flag, int type, photonStatus status)
 
int _photon_probe (photonAddr addr, int *flag, photonStatus status)
 
int _photon_io_init (char *file, int amode, void *view, int niter)
 
int _photon_io_finalize ()
 
int _photon_handle_addr (photonAddr addr, photonAddr raddr)
 
int _photon_get_buffer_private (void *addr, uint64_t size, const struct photon_buffer_priv_t **pptr)
 
int _photon_get_buffer_remote (photon_rid request, photonBuffer ret_buf)
 

Variables

photonBufferHandle shared_storage
 
ProcessInfophoton_processes
 

Function Documentation

◆ _photon_cancel()

int _photon_cancel ( photon_rid  request,
int  flags 
)

Definition at line 279 of file photon_backend.c.

◆ _photon_finalize()

int _photon_finalize ( void  )

Definition at line 298 of file photon_backend.c.

◆ _photon_get_buffer_private()

int _photon_get_buffer_private ( void *  addr,
uint64_t  size,
const struct photon_buffer_priv_t **  pptr 
)

Definition at line 1663 of file photon_backend.c.

◆ _photon_get_buffer_remote()

int _photon_get_buffer_remote ( photon_rid  request,
photonBuffer  ret_buf 
)

Definition at line 1686 of file photon_backend.c.

◆ _photon_handle_addr()

int _photon_handle_addr ( photonAddr  addr,
photonAddr  raddr 
)

Definition at line 1636 of file photon_backend.c.

◆ _photon_init()

int _photon_init ( photonConfig  cfg,
ProcessInfo info,
photonBufferHandle  ss 
)

Definition at line 49 of file photon_backend.c.

◆ _photon_io_finalize()

int _photon_io_finalize ( )

Definition at line 1624 of file photon_backend.c.

◆ _photon_io_init()

int _photon_io_init ( char *  file,
int  amode,
void *  view,
int  niter 
)

Definition at line 1614 of file photon_backend.c.

◆ _photon_post_os_get()

int _photon_post_os_get ( photon_rid  request,
int  proc,
void *  ptr,
uint64_t  size,
int  tag,
uint64_t  r_offset 
)

Definition at line 1169 of file photon_backend.c.

◆ _photon_post_os_get_direct()

int _photon_post_os_get_direct ( int  proc,
void *  ptr,
uint64_t  size,
photonBuffer  rbuf,
int  flags,
photon_rid request 
)

Definition at line 1308 of file photon_backend.c.

◆ _photon_post_os_put()

int _photon_post_os_put ( photon_rid  request,
int  proc,
void *  ptr,
uint64_t  size,
int  tag,
uint64_t  r_offset 
)

Definition at line 1106 of file photon_backend.c.

◆ _photon_post_os_put_direct()

int _photon_post_os_put_direct ( int  proc,
void *  ptr,
uint64_t  size,
photonBuffer  rbuf,
int  flags,
photon_rid request 
)

Definition at line 1259 of file photon_backend.c.

◆ _photon_post_recv_buffer_rdma()

int _photon_post_recv_buffer_rdma ( int  proc,
void *  ptr,
uint64_t  size,
int  tag,
photon_rid request 
)

Definition at line 545 of file photon_backend.c.

◆ _photon_post_send_buffer_rdma()

int _photon_post_send_buffer_rdma ( int  proc,
void *  ptr,
uint64_t  size,
int  tag,
photon_rid request 
)

Definition at line 821 of file photon_backend.c.

◆ _photon_post_send_request_rdma()

int _photon_post_send_request_rdma ( int  proc,
uint64_t  size,
int  tag,
photon_rid request 
)

Definition at line 849 of file photon_backend.c.

◆ _photon_probe()

int _photon_probe ( photonAddr  addr,
int *  flag,
photonStatus  status 
)

Definition at line 1587 of file photon_backend.c.

◆ _photon_probe_ledger()

int _photon_probe_ledger ( int  proc,
int *  flag,
int  type,
photonStatus  status 
)

Definition at line 1504 of file photon_backend.c.

◆ _photon_recv()

int _photon_recv ( photon_rid  request,
void *  ptr,
uint64_t  size,
int  flags 
)

Definition at line 541 of file photon_backend.c.

◆ _photon_register_buffer()

int _photon_register_buffer ( void *  addr,
uint64_t  size 
)

Definition at line 324 of file photon_backend.c.

◆ _photon_send()

int _photon_send ( photonAddr  addr,
void *  ptr,
uint64_t  size,
int  flags,
photon_rid request 
)

Definition at line 537 of file photon_backend.c.

◆ _photon_send_FIN()

int _photon_send_FIN ( photon_rid  request,
int  proc,
int  flags 
)

Definition at line 1356 of file photon_backend.c.

◆ _photon_test()

int _photon_test ( photon_rid  request,
int *  flag,
int *  type,
photonStatus  status 
)

Definition at line 423 of file photon_backend.c.

◆ _photon_try_eager()

int _photon_try_eager ( int  proc,
void *  ptr,
uint64_t  size,
int  tag,
photon_rid request,
photonBufferHandle  db 
)

Definition at line 643 of file photon_backend.c.

◆ _photon_try_rndv()

int _photon_try_rndv ( int  proc,
void *  ptr,
uint64_t  size,
int  tag,
photon_rid request,
photonBufferHandle  db 
)

Definition at line 744 of file photon_backend.c.

◆ _photon_unregister_buffer()

int _photon_unregister_buffer ( void *  addr,
uint64_t  size 
)

Definition at line 380 of file photon_backend.c.

◆ _photon_wait()

int _photon_wait ( photon_rid  request)

Definition at line 507 of file photon_backend.c.

◆ _photon_wait_any()

int _photon_wait_any ( int *  ret_proc,
photon_rid ret_req 
)

Definition at line 1433 of file photon_backend.c.

◆ _photon_wait_any_ledger()

int _photon_wait_any_ledger ( int *  ret_proc,
photon_rid ret_req 
)

Definition at line 1455 of file photon_backend.c.

◆ _photon_wait_recv_buffer_rdma()

int _photon_wait_recv_buffer_rdma ( int  proc,
uint64_t  size,
int  tag,
photon_rid request 
)

Definition at line 932 of file photon_backend.c.

◆ _photon_wait_send_buffer_rdma()

int _photon_wait_send_buffer_rdma ( int  proc,
uint64_t  size,
int  tag,
photon_rid request 
)

Definition at line 982 of file photon_backend.c.

◆ _photon_wait_send_request_rdma()

int _photon_wait_send_request_rdma ( int  tag)

Definition at line 1061 of file photon_backend.c.

◆ SLIST_HEAD()

SLIST_HEAD ( pendingmemregs  ,
photon_mem_register_req   
)

Definition at line 35 of file photon_backend.c.

Variable Documentation

◆ photon_processes

ProcessInfo* photon_processes

Definition at line 33 of file photon_backend.c.

◆ shared_storage

photonBufferHandle shared_storage

Definition at line 32 of file photon_backend.c.