Displaying 4 results from an estimated 4 matches for "vddm_item".
Did you mean:
vddk_item
2020 Aug 05
2
Re: More parallelism in VDDK driver (was: Re: CFME-5.11.7.3 Perf. Tests)
On Wed, Aug 05, 2020 at 02:39:44PM +0300, Nir Soffer wrote:
> Can we use something like the file plugin? thread pool of workers,
> each keeping open vddk handle, and serving requests in parallel from
> the same nbd socket?
Yes, but this isn't implemented in the plugins, it's implemented in
the server. The server always uses a thread pool, but plugins can opt
for more or less
2020 Aug 05
2
Re: More parallelism in VDDK driver (was: Re: CFME-5.11.7.3 Perf. Tests)
...gt; VixDiskLibConnectParams *params; /* connection parameters */
> VixDiskLibConnection connection; /* connection */
> VixDiskLibHandle handle; /* disk handle */
> struct vddk_item *next; /* next handle in the list */
> }
>
> struct vddk_handle {
> struct vddm_items *pool;
> pthread_mutex_t *mutex;
> }
>
> open() will initialize the pool of vddk_item.
>
> pread() will:
> - lock the mutex
> - take an item from the pool
> - unlock the mutex
> - perform a single request
> - lock the mutex
> - return the item to the pool...
2020 Aug 05
0
Re: More parallelism in VDDK driver (was: Re: CFME-5.11.7.3 Perf. Tests)
...The struct can be:
struct vddk_item {
VixDiskLibConnectParams *params; /* connection parameters */
VixDiskLibConnection connection; /* connection */
VixDiskLibHandle handle; /* disk handle */
struct vddk_item *next; /* next handle in the list */
}
struct vddk_handle {
struct vddm_items *pool;
pthread_mutex_t *mutex;
}
open() will initialize the pool of vddk_item.
pread() will:
- lock the mutex
- take an item from the pool
- unlock the mutex
- perform a single request
- lock the mutex
- return the item to the pool
- unlock the mutex
Since we don't need lot of connectio...
2020 Aug 05
0
Re: More parallelism in VDDK driver (was: Re: CFME-5.11.7.3 Perf. Tests)
...ams; /* connection parameters */
> > VixDiskLibConnection connection; /* connection */
> > VixDiskLibHandle handle; /* disk handle */
> > struct vddk_item *next; /* next handle in the list */
> > }
> >
> > struct vddk_handle {
> > struct vddm_items *pool;
> > pthread_mutex_t *mutex;
> > }
> >
> > open() will initialize the pool of vddk_item.
> >
> > pread() will:
> > - lock the mutex
> > - take an item from the pool
> > - unlock the mutex
> > - perform a single request
> >...