diff --git a/src/gds/awgtpman/awg.c b/src/gds/awgtpman/awg.c
index 8f7b6735588537d04aecf5d65d40465c31e17664..876e0975b630ebb10956f2b182fd3710fa586e3b 100644
--- a/src/gds/awgtpman/awg.c
+++ b/src/gds/awgtpman/awg.c
@@ -963,12 +963,12 @@ Organization of generating waveforms:
 
          // now start transfer
 
-//         timing test code
+//         // timing test code
 //         clock_t start = clock();
 //         int n = 10;
 //         for(int i=0; i<n; ++i)
-         memcpy_to_vol_aligned(
-             target_page->buf, p->page, p->pagelen * sizeof( float ) );
+         memcpy(
+             (void *)target_page->buf, p->page, p->pagelen * sizeof( float ) );
 
 //         clock_t end = clock();
 //         printf("copy of %d bytes took %e seconds\n",
diff --git a/src/gds/awgtpman/shared_memory.c b/src/gds/awgtpman/shared_memory.c
index b9e5a13bb1fbdbc12b22019240a56ea65f79e99f..b45d3ac971daff5f6f362ca4c6fdf9b3f1b36ff8 100644
--- a/src/gds/awgtpman/shared_memory.c
+++ b/src/gds/awgtpman/shared_memory.c
@@ -23,60 +23,3 @@ int OpenAwgDataSharedMemory(const char *model_name)
     AWG_DATA_INIT(shmemAwgData);
     return (shmemAwgData!=NULL) ? -1 : 0;
 }
-
-// large copy alignment. use 16 bytes if we can, otherwise drop back to 8.
-#ifdef __GNUC__
-#define CPY_WORD  __int128_t
-#define CPY_TEST_MASK 0xf
-#else
-#define CPY_WORD  uint64_t
-#define CPY_TEST_MASK 0x7
-#endif
-
-volatile void *
-memcpy_to_vol_aligned(volatile void *dest, const void *src, size_t len)
-{
-    if( ((uint64_t)dest & CPY_TEST_MASK))
-    {
-        fprintf(stderr, "memcpy_to_vol_aligned(): destination pointer not aligned on %d byte boundary\n", sizeof(CPY_WORD));
-        _exit(1);
-    }
-    if( ((uint64_t)src & CPY_TEST_MASK))
-    {
-        fprintf(stderr, "memcpy_to_vol_aligned(): source pointer not aligned on %d byte boundary\n", sizeof(CPY_WORD));
-        _exit(1);
-    }
-    if(len & CPY_TEST_MASK)
-    {
-        fprintf(stderr, "memcpy_to_vol_aligned(): buffer length not a multiple of %d.\n", sizeof(CPY_WORD));
-        _exit(1);
-    }
-
-    // source copied from gcc memcpy
-    size_t length_words = len / sizeof(CPY_WORD);
-    volatile CPY_WORD *d = dest;
-    const CPY_WORD *s = src;
-    while (length_words--)
-        *d++ = *s++;
-    return dest;
-}
-
-void * memcpy_from_vol(void *dest, const volatile void *src, size_t len)
-{
-    // source copied from gcc memcpy
-    char *d = dest;
-    volatile const char *s = src;
-    while (len--)
-        *d++ = *s++;
-    return dest;
-}
-
-volatile void * memcpy_vol_to_vol(volatile void *dest, const volatile void *src, size_t len)
-{
-    // source copied from gcc memcpy
-    volatile char *d = dest;
-    volatile const char *s = src;
-    while (len--)
-        *d++ = *s++;
-    return dest;
-}
diff --git a/src/gds/awgtpman/shared_memory.h b/src/gds/awgtpman/shared_memory.h
index 8dfe24911fa6dcb2b419c5d413ba11419d887306..099d0ea244e72dc277647f0ef246c79842544f04 100644
--- a/src/gds/awgtpman/shared_memory.h
+++ b/src/gds/awgtpman/shared_memory.h
@@ -19,38 +19,4 @@ extern volatile AWG_DATA *shmemAwgData;
 int OpenAwgDataSharedMemory(const char *model_name);
 
 
-// helper functions for volatile pointers
-
-/**
- * Copy to a volatile pointer from a regular pointer.
- * Destination and source must be aligned on 8 byte boundaries
- * @param dest The destination pointer.  Should be volatile.
- * @param src The source pointer.
- * @param len Number of bytes to copy.
- * @return The destination pointer.
- */
-volatile void *
-memcpy_to_vol_aligned(volatile void *dest, const void *src, size_t len);
-
-/**
- * Copy to a regular pointer from a volatile pointer.
- * Works the same as memcpy()
- * @param dest Destination pointer.
- * @param src  Source pointer.  Must be volatile.
- * @param len  Number of bytes to copy.
- * @return  destination pointer.
- */
-void * memcpy_from_vol(void *dest, const volatile void *src, size_t len);
-
-/**
- * Copy to a volatile pointer from a volatile pointer.
- * Works the same as memcpy()
- * @param dest The destination pointer.  Must be volatile.
- * @param src The source pointer.  Must be volatile.
- * @param len Number of bytes to copy.
- * @return The destination pointer.
- */
-volatile void * memcpy_vol_to_vol(volatile void *dest, const volatile void *src, size_t len);
-
-
 #endif // DAQD_TRUNK_SHARED_MEMORY_H