Thank Mark. I have tried another test program in Linux, it call 2 C lib functions (open & fstat) to small files, and I compute the time they take via gettimeofday system call.
// C code ... ret = gettimeofday(&before, &zone); fd = open(argv[1], O_RDONLY); ret = gettimeofday(&after, &zone); interval1 = (after.tv_usec - before.tv_usec); ret = fstat(fd, &buf); ret = gettimeofday(&before, &zone); interval2 = (before.tv_usec - after.tv_usec); // C code ... Linux Test results(time unit is usec): case open fstat ---- ---- ----- 1 800 240 1 757 239 2 18175 245 2 17240 246 Case 1: smbmount Linux/samba's share that contains 20,000 small files set 'case sensitive = Yes' in smb.conf Case 2: smbmount Windows's share that contains 20,000 small file Test analysis: 1. Linux/samba performs much better than Windows as for open system call. 2. The 2 Operation systems have same performance with fstat system call. But when VB test program in Windows is used, Windows has much better perpormance then linux/samba // VB code ... Set objFSO = CreateObject("Scripting.FileSystemObject") thistime = thisnow If objFSO.FileExists(fn) Then totle = totle & "Check file time " & CStr(thisnow - thistime) + " ms" + vbCrLf thistime = thisnow Set objFile = objFSO.GetFile(fn) totle = totle & "Get object time " & CStr(thisnow - thistime) + " ms" + vbCrLf thistime = thisnow temp = DateValue(CStr(objFile.DateLastModified)) totle = totle & "Get date time " & CStr(thisnow - thistime) + " ms" + vbCrLf End If // VB code ... Windows Test results(time unit is msec): case FileExists GetFile DateLastModified ---- ---------- ------- ---------------- 1 20 0 100 1 0 0 120 1 0 0 61 2 30 10 0 2 30 0 0 2 10 0 0 Case 1: map Linux/samba's share that contains 20,000 small files set 'case sensitive = Yes' in smb.conf Case 2: map Windows's share that contains 20,000 small file Can we get the follow conclusions as for check small file's property: 1. Windows client can get much better performance from Windows's share than others' 2. Linux client can get much better performance from Linux/Samba's share than others' Best Regards! Jacky Kim . >Hi, > >The next step is probably to capture some network traces of your >benchmarking test and compare and contrast the NT and Samba backends. > >Playing with the negotiated protocol level might win you some more >performance by simplifying the transactions. It may lose you a lot too >though. (See max protocol option) > >There are the max xmit/socket options/stat cache tweakables. If you >have logging wound up on the linux box, that can affect performance >greatly too. > >How does performance of the filesystem on the linux machine vary with >number of files in the directory ? Ie, take samba out of the equation >and see if you're running into underlying issues with your file layout. > >Splitting your directory into a hierarchical structure is certainly more >scalable than a flat directory. > >Mark > -- To unsubscribe from this list go to the following URL and read the instructions: http://lists.samba.org/mailman/listinfo/samba